EXTREMESOFT TEAM
Bine ati venit.Pe acest forum gasiti sisteme de operare,tutoriale,hackuri,yahoo hack,muzica,muzica populara,muzica disco,muzica house,filme,filme de groaza,filme de comedie,filme actiune,filme aventura,jocuri,jocuri pc,jocuri xbox,din viata de zi cu zi moda,politica si multe altele.Resusrse pentru SA:MP,Counter-Strike,Metin2. WWW.EXTREMSOFT.3XFORUM.RO WWW.EXTREMSOFT.3XFORUM.RO
|
Nou pe simpatie: Profil Diana2019
 | Femeie 25 ani Vaslui cauta Barbat 25 - 80 ani |
|
|
EXTREMESOFT TEAMReguliInregistrareLoginPozeNu sunteti logat. Lista Forumurilor Pe Tematici
|
| #1 |
BillAdministrator
Postari: 71
|
|
Grad tutorial: incepator mediu avansat
<?php $string = "eu cghjb asd si asda"; $pattern = '/cgh/'; preg_match($pattern, $string, $return); print_r($return); ?>
$variabila reprezintă textul din care extragem informaţii după expresiile regulate. $pattern reprezintă între conţinând expresiile regulate. Neapărat expresiile se scriu formă linii oblice de mai /[expresie]/.
Scriptul de sus va returna ca cgh dovadă că a în fost găsit string steluţa.
Simbolul * <?php $string = "eu cuuuuub asd si asda"; $pattern = '/cu*/'; preg_match($pattern, $string, $return); print_r($return); ?>
Script-ul va afişa “cuuuuu”.
Prin steluţa, se preiau părţile care încep cu caracterul “c” şi continuă cu zero sau mai multe caractere “u”.
Asemănător este şi simbolul plus + Singura diferenţă este ca textul preluat trebuie să aibă cel puţin un caracter u după caracterul iniţial “c”.
Semnul întrebării – ? Ne spune că pot să fie caractere u după caracterul iniţial c sau pot să lipsească.
Expresii din paranteze pătrate Ţin locul anumitor caractere <?php $string = "eu jksdfb asd si asda"; $pattern = '/j[a-z]/'; preg_match($pattern, $string, $return); print_r($return); ?>
În pattern avem expresia “j[a-z]“. Deci se caută string-uri care încep cu litera j şi continuă cu orice altă literă (una singură .
În script-ul de mai sus se va afişa “jk”. Asta pentru ca în string avem “jksdfb”. Începe cu j şi să se mai afişeze încă o literă [a-z] după j în cazul în care această există.
Dacă dorim să preluăm tot cuvântul “jksdfb” folosim expresia “j[a-z]*”. Dacă o luăm logic, cerem să ni se afişeze ceva care începe cu literă j, şi continuă cu orice altă literă de la a la z. Expresia se opreşte la spaţiul dintre cuvinte deoarece acesta nu este cuprins în [a-z].
Expresiile din paranteze pătrate sunt case sensitive. De exemplu dacă în stringul nostru ar fi “jksDfb”. S-ar afişa doar “jks” deoarece D nu este în [a-z] ci este cuprins în [A-Z].
Pentru a fi afişat întregul cuvânt “jksDfb” punem expresia de forma “j[a-za-Z]*”. Aceasta înseamnă că poate continua cu oricâte caractere cuprinse atât în [a-z] cât şi în [A-Z].
Pentru numere punem la fel condiţia [0-9]. Dacă avem textul “jk2sDfb”, fără condiţia [0-9] ar fi preluat doar “jk”. Oprindu-se la “2″. Pentru această expresia arată de forma “j[a-za-Z0-9]*”.
Caractere multiple Pentru caractere multiple scriem numărul tipului de caractere în acolade { }.
Spre exemplu. Având string-ul “daaa”. Folosim expresia “da{3}” pentru a marca faptul că dorim părţile care încep cu literă d şi continuă cu exact 3 litere de “a”. De asemenea putem folosi “da{2,4}” pentru a marca faptul că dorim părţile care încep cu literă d şi continuă cu 2,3,4 (între două sau patru) litere de a. Sau putem folosi “da{2,}” pentru a marca faptul că dorim să aibă 2 sau mai multe litere de “a”.
Ca demonstraţie practică putem folosi expresiile regulate să extragem e-mail-uri dintr-un string. <?php $string = "eu cghjb asd si asda"; $pattern = '/[a-zA-Z0-9-_.]+@[a-zA-Z0-9]+.[a-zA-z]{2,4}/'; preg_match($pattern, $string, $return); print_r($return); ?> Observând pattern-ul am cerut aşa: String-uri care încep cu orice literă cuprinsă între a-z sau A-Z sau orice număr de la 0 la 9 Sau mai pot conţine simbolul minus “-” sau simbolul underline “_” sau punct “.” [a-za-Z0-9-_.]
De asemenea simbolul plus + adăugat după “[a-za-Z0-9-_.]” Spune ca poate continuă cu cel puţin încă o literă cuprinsă între a-za-Z0-9 sau “-” , “_” , “.”. DAR va avea la un moment dat un simbol “@” urmat de caractere cuprinse între a-z, A-Z sau 0-9 @[a-za-Z0-9]+
Şi în continuare trebuie să conţină şi un punct “.” urmat de 2, 3 sau 4 caractere cuprinse între [a-z], [A-Z].
Prin urmare. La e-mail-ul: şi expresia “[a-za-Z0-9-_.]+@[a-za-Z0-9]+.[a-za-z]{2,4}”
Expresia: [a-za-Z0-9-_.]+ Ţine loc de “gig_iigj” Expresia: “@” Este chiar “@” Expresia: [a-za-Z0-9]+ Reprezintă “yahoo”. Expresia: “.” este chiar punctul de la .com spre exemplu Expresia: [a-za-z]{2,4} reprezintă com din “.com” Care poate fi “.info” sau “.uk” de aceea trebuie să fie la un range de caractere de minim 2 şi maxim 4.
Mai există şi domenii cu extensii duble . Cum ar fi .co.uk sau .us.com aşa că puteţi folosi expresia [a-za-z.]{2,6}
|
|
| |
|