Práce s řetězci Řetězec je libovolný text nebo libovolná skupina znaků. Řetězec se také označuje jako string. Činnosti prováděné s řetězci: Počítání znaků.

Slides:



Advertisements
Podobné prezentace
Standardní knihovní funkce pro práci s textovými řetězci
Advertisements

Pro začátek něco lehčího
VISUAL BASIC Práce s řetězci Použitá literatura: Kvoch: Visual Basic 4.
Počítače a programování 1 Přednáška 13 Jiří Šebesta.
Serialization (převod) Úvod 1 SGML W3C HTML 1.x. HTML4.0 xHTML 1.0. xHTML 2.x HTML 5 (xHTML 5) HTML 4.0 xml (xHTML 1.0) xHTML je dobřé zformovaný (well-formed)
Jazyk VHDL Martin Štěpánek
Opakování Co je výsledkem následujícího prográmku? my $a="kol"; my $b="o"; $a.= $b; $b.= $a; print "a = $a, b = $b\n"; Vkládání speciálních znaků? Uvozovací.
Rezervační systém AK Kladno Pokročilé používání. Vytvoření opakování rezervace.
Semestrální práce KIV/PT Martin Kales Hana Hůlová.
HTML. Barvy Co je to HTML soubor? HTML je zkratka Hyper Text Markup Language V HTML souboru je textový soubor proložen malými značkovacími.
Třída Array Je součásti balíčku java.util Účelem je usnadnit práci s poli Metody – nejpoužívanější equel(),fill(),sort() a binarySearch() equels() Slouží.
Algoritmy I. Cvičení č. 10.
Funkce Asc, Chr každý znak kód v ASCI tabulce číslu odpovídá znak
Tvorba www stránek SYNTAXE ICT 4.ročník. Obsah TAGY TAGY ATRIBUTY ATRIBUTY KŘÍŽENÍ TAGŮ KŘÍŽENÍ TAGŮ VELIKOST PÍSMEN VELIKOST PÍSMEN MEZERY VE ZDROJOVÉM.
Algoritmy zpracování textů II
Programování v Pascalu Přednáška 7
J a v a Začínáme programovat Lucie Žoltá pole řetězec debugr.
PHP PHP – základy syntaxe (část 1) - 03 Mgr. Josef Nožička IKT PHP
C# - znakové typy a řetězce
Obchodní akademie, Ostrava-Poruba, příspěvková organizace Vzdělávací materiál/DUM VY_32_INOVACE_01B8 Autor Ing. Jiří Kalousek Období vytvoření listopad.
PHP FUNKCE DANIEL BEZNOSKOV. Seznam funkcí Strlen File Substr Trim File_exists Strrev Strtr.
PHP – zasílání dat z formuláře
Základy práce na PC Ing. Jan Roubíček. Vyhledávání souborů VY_32_INOVACE_10_1_11_AP.
SETKÁNÍ UŽIVATELŮ KNIH. SYS. TINLIB / T SERIES Městská knihovna Chrudim listopadu 2003.
Abeceda a formální jazyk
Datové typy a práce s nimi
Počítače a programování 1 8.přednáška. Obsah přednášky Řetězce - deklarace a vytvoření Základní metody pro práci s řetezci Znaky - třída Character Základní.
Jiří Znoj - zno Tvorba konkordace Algoritmy II 3. projekt, 5. zadání Jiří Znoj - zno
Maturitní okruh 22: Úvod do HTML. Značkovací a klasické jazyky Klasické: převládá strukturovaný text (programovací kód), skripty jsou prováděny na straně.
JavaScript Podmínky, cykly a pole.
OSNOVA: a)Programování se soubory b)Záloha databáze v souboru c) Příklady Jiří Šebesta Ústav radioelektroniky, FEKT VUT v Brně Počítače a programování.
Návrh a tvorba WWW Cvičení 4
Využití vzorců a funkcí k úpravám v textu
Proměnná typu "pole" Mezi proměnné typu "pole" patří všechny superglobální proměnné. Mezi proměnné typu "pole" patří všechny superglobální proměnné. To.
Orbis pictus 21. století Tato prezentace byla vytvořena v rámci projektu.
Michal Kutil ČVUT FEL Praha
A1PRG - Programování – Seminář Ing. Michal Standardní knihovní funkce pro vstup a výstup 12 Verze
Příkaz "echo" Příkaz "echo" Příkaz "echo" se používá pro zobrazení daných informací na monitoru. Příkaz "echo" se používá pro zobrazení daných informací.
UNIX — doplňky Informatika pro ekonomy II přednáška 9.
Objektově orientované programování - cvičení 1
Autor:Ing. Pavel Brož Předmět/vzdělávací oblast:Informační a komunikační technologie Tematická oblast:Práce se standardním aplikačním programovým vybavením.
Gymnázium prof. Jana Patočky Jindřišská Praha 1 „Praha & EU: Investujeme do vaší.
Číslo projektuCZ.1.07/1.5.00/ Číslo materiáluVY_32_INOVACE_250 Název školyGymnázium, Tachov, Pionýrská 1370 Autor Ing. Roman Bartoš Předmět Informatika.
PHP Vytváření formuláře.
2 UDÁLOSTI ONMOUSEOVER, ONMOUSEOUT Odkaz Událost je část kódu vyvolana za určité (uživatelem vyvolané) situace (kliknutí myší, přejetím kurzorem myši,
KIV/PPA1 cvičení 9 Cvičící: Pavel Bžoch. Osnova cvičení Třída String a její metody –Řetězce a operace s nimi.
Rozpoznávání v řetězcích
PROGRAMOVÁNÍ V PHP PERSONAL HOME PAGES CYKLY V PHP.
STRING A UKAZATELE. Co to je řetězec? Řetězec v Javě je samostatný objekt. Je konstantní, co znamená, že jednou vytvořený řetězec nelze změnit. Chceme-li.
VISUAL BASIC PRALG.
Obchodní akademie, Ostrava-Poruba, příspěvková organizace Vzdělávací materiál/DUM VY_32_INOVACE_01B5 Autor Ing. Jiří Kalousek Období vytvoření listopad.
INTERNETOVÁ DOMÉNA V této prezentaci se dozvíte něco málo o internetových doménách…
Obchodní akademie, Ostrava-Poruba, příspěvková organizace Vzdělávací materiál/DUM VY_32_INOVACE_01B8 Autor Ing. Jiří Kalousek Období vytvoření listopad.
Ukazatele, řetězce Přednáška č. 3. Ukazatele  Ukazatel (pointer) – typ o velikosti 4 bajty (v 32bit. systémech) pro uložení adresy objektu na který ukazuje.
Řetězce String. Co je to řetězec Jako řetězec označujeme pojmenovanou skupinu libovolných znaků Deklarujeme jej pomocí příkazu Délka řetězce není v tomto.
Fce VB - matematické Abs( výraz ) Fix( výraz ) Int( výraz) Sgn(výraz )
Algoritmizace a programování Cykly - For. FOR Předem známe počet opakování Předem známe počet opakování Syntaxe: Syntaxe: for proměnná in range(rozpětí):
Programovací jazyk C# 2. část. Datové typy C# rozeznává dva druhy datových typů, hodnotové a referenční. Hodnotové datové typy Proměnné hodnotového datového.
Algoritmizace a programování
Úvod do Pythonu – IO operace se soubory.
Úvod do programování 6. hodina
Vzorové řešení zápočtového testu
Algoritmizace a programování
Výukový materiál zpracován v rámci projektu
Výukový materiál zpracován v rámci projektu
Řetězce (24) Funkce strchr: deklarována v: string.h
Algoritmizace a datové struktury (14ASD)
Algoritmizace a datové struktury (14ASD)
Algoritmizace a datové struktury (14ASD)
Knihovny.cz Vyhledávání patentových dokumentů
Transkript prezentace:

Práce s řetězci Řetězec je libovolný text nebo libovolná skupina znaků. Řetězec se také označuje jako string. Činnosti prováděné s řetězci: Počítání znaků Ořezávaní Záměna Šifrování a další

Formátování řetězců ořezávání řetězců chop() - ořízne prázdné znaky na konci ltrim() - ořízne prázdné znaky vlevo trim() - ořízne prázdné znaky na začátku a na konci <? $text=" Zítra půjdeme do školy "; $name=trim($text); echo $name; // vypíše – Zítra půjdeme do školy ?>

Změna velikosti písmen strtoupper() - všechna písmena velká strtolower() - všechna písmena malá ucfirst() - první písmeno v řetězci velké ucwords() - první písmena všech slov velká

Změna velikosti písmen Některé funkce pro práci s řetězci mají problém se správnou funkcí při používání kódování UTF-8. Lze využít knihovnu mbstring, která tento problém řeší. U změny velikosti písmen na malá lze použít: mb_strtolower($text,"utf-8")

Příklad Vytvořte proměnnou, ve které bude uložen řetězec "aHoj šKoLo!". Tento řetězec nechte vypsat tak, aby všechna písmena byla: velká malá pouze první písmeno v řetězci velké pouze první písmena všech slov velká Výpis jednotlivých řetězců musí být pod sebou

Řešení Obr. 1

Funkce pro spojování a dělení řetězců implode(separátor, pole) - spojí řetězce daným separátorem explode(separátor, řetězec) - vytvoří pole, roztrháním řetězce dle daného separátoru substr(řetězec, začátek, konec) - umožní pomocí počátečního a koncového znaku získat podřetězec z řetězce mb_substr(řetězec, začátek, konec,"utf-8") - umožní pomocí počátečního a koncového znaku získat podřetězec z řetězce – podpora kódování UTF-8

Funkce implode Ukázka spojení dvou řetězců z pole <? $jmeno = Array("Roman", "Blábolil"); $celejmeno = implode (" ", $jmeno); echo $celejmeno; ?>

Funkce explode Ukázka oddělení jména od domény u e-mailové adresy <? $email = ("blabolil@sosvaz.cz"); $pole = explode ("@", $email); echo $pole[0]."<br />"; echo $pole[1]; ?>

Funkce substr Získání podřetězce - 5 znaků zleva (znaky se počítají od 0) <? $test = ("Ahoj světe!"); echo mb_substr($test, 0, 5, "utf-8"); ?> Získání posledních 6 znaků echo mb_substr($test, -6, 6, "utf-8");

Testování délky řetězce strlen() - vrátí délku řetězce mb_strlen() - vrátí délku řetězce (pro kódování utf-8) <? $test = ("Ahoj světe!"); echo mb_strlen($test, "utf-8"); ?>

Vyhledávání řetězců strstr(řetězec, hledaný řetězec) - vyhledá daný řetězec nebo znak stristr(řetězec, hledaný řetězec) - nerozlišuje velikost písmen Pokud budete chtít otestovat, zda uživatel požaduje e-mail na zástupce nebo ředitele <? $test = ("chci adresu zástupce"); if (strstr($test, "zástupce")) $email = "blabolil@sosvaz.cz"; else if (strstr($test, "ředitel")) $email = "kabele@sosvaz.cz"; echo "Požadovaná adresa je ". $email; ?>

Nahrazení a odstranění znaků z řetězce Nahrazení hledané části <? $text="rkola"; $novy=str_replace ("r","š",$text); echo $novy; ?> Odstranění tagů HTML a PHP z řetězce $text="<b>škola</b>"; $novy=strip_tags ($text); echo $novy; ?>

Převod tagů v řetězci, zakódování řetězce Převod tagů v řetězci na entity HTML <? $text="<b>škola tučně</b>"; $novy=htmlspecialchars ($text); echo $novy; ?> Zakódování řetězce $text="<b>škola</b>"; $novy=crypt ($text); echo $novy; ?>

Převod řetězců na jiné znaky <? $text="školička"; $prevodni_tabulka = Array('ä'=>'a','Ä'=>'A','á'=>'a','Á'=>'A','à'=>'a','À'=>'A', 'ã'=>'a','Ã'=>'A','â'=>'a','Â'=>'A','č'=>'c','Č'=>'C','ć'=>'c','Ć'=>'C', 'ď'=>'d','Ď'=>'D','ě'=>'e','Ě'=>'E','é'=>'e','É'=>'E','ë'=>'e','Ë'=>'E', 'è'=>'e','È'=>'E','ê'=>'e','Ê'=>'E','í'=>'i','Í'=>'I','ï'=>'i','Ï'=>'I', 'ì'=>'i','Ì'=>'I','î'=>'i','Î'=>'I','ľ'=>'l','Ľ'=>'L','ĺ'=>'l','Ĺ'=>'L', 'ń'=>'n','Ń'=>'N','ň'=>'n','Ň'=>'N','ñ'=>'n','Ñ'=>'N','ó'=>'o','Ó'=>'O', 'ö'=>'o','Ö'=>'O','ô'=>'o','Ô'=>'O','ò'=>'o','Ò'=>'O','õ'=>'o','Õ'=>'O', 'ő'=>'o','Ő'=>'O','ř'=>'r','Ř'=>'R','ŕ'=>'r','Ŕ'=>'R','š'=>'s','Š'=>'S', 'ś'=>'s','Ś'=>'S','ť'=>'t','Ť'=>'T','ú'=>'u','Ú'=>'U','ů'=>'u','Ů'=>'U', 'ü'=>'u','Ü'=>'U','ù'=>'u','Ù'=>'U','ũ'=>'u','Ũ'=>'U','û'=>'u','Û'=>'U', 'ý'=>'y','Ý'=>'Y','ž'=>'z','Ž'=>'Z','ź'=>'z','Ź'=>'Z'); //Převodní tabulka pomocí pole je použita z důvodu kódování UTF-8 $novy = strtr($text, $prevodni_tabulka); echo $novy; ?>

Otázky k opakování K jakým účelům se používá funkce "trim"? Jaké funkce se používají pro změnu velikosti písma řetězce? Jaké funkce se používají pro spojování a dělení řetězců? K jakým účelům se používá funkce "strstr"?

Použité zdroje BLÁBOLIL, R. Informační a komunikační technologie. 3. rozšířené vydání. České Budějovice: KOPP, 2011. str. 407 Použité obrázky: Vlastní