Mis on regulaarne väljend PHP-s?
PHP regulaaravaldis, tuntud ka kui regex, on võimas mustrite sobitamise algoritm, mida saab teostada ühes avaldises. Regulaaravaldised kasutavad keerukate avaldiste loomiseks aritmeetilisi operaatoreid nagu (+, -, ^). Need võivad aidata teil täita selliseid ülesandeid nagu e-posti aadresside, IP-aadresside jms kinnitamine.
Miks kasutada regulaaravaldisi
- PHP Regulaaravaldised lihtsustavad stringiandmetes mustrite tuvastamist, kutsudes ühe funktsiooni. See säästab kodeerimisaega.
- Kasutaja sisendi, näiteks e-posti aadressi, domeeninimede, telefoninumbrite, IP-aadresside,
- Märksõnade esiletõstmine otsingutulemites
- Kohandatud HTML-malli loomisel. Regexi PHP-s saab kasutada mallide siltide tuvastamiseks ja nende asendamiseks tegelike andmetega.
Selles PHP Regexi õpetuses saate teada:
- Sisseehitatud regulaaravaldise funktsioonid PHP-s
- PHP Preg_match ()
- PHP Preg_split ()
- PHP Preg_replace ()
- Regulaaravaldise metamärgid
- Mustri selgitamine
Sisseehitatud regulaaravaldise funktsioonid PHP-s
PHP-s on sisse ehitatud funktsioonid, mis võimaldavad meil töötada tavaliste funktsioonidega, mida õpime selles PHP regulaaravaldiste õpetuses. Vaatame PHP-s tavaliselt kasutatavaid regulaaravaldise funktsioone.
- preg_match () PHP-s - seda funktsiooni kasutatakse stringi mustrite sobitamiseks PHP-s. See tagastab tõene, kui vaste leitakse, ja vale, kui vastet ei leita.
- preg_split () PHP-s - seda funktsiooni kasutatakse stringi mustrivastuse teostamiseks ja tulemuste jagamiseks numbriliseks massiiviks
- preg_replace () PHP-s - seda funktsiooni kasutatakse stringi mustrivaste täitmiseks ja seejärel vaste asendamiseks määratud tekstiga.
Allpool on regulaaravaldise funktsiooni nagu PHP preg_match (), PHP preg_split () või PHP preg_replace () süntaks.
SIIN,
- "function_name (…)" on kas PHP preg_match (), PHP preg_split () või PHP preg_replace ().
- "/… /" Kaldkriipsud tähistavad meie PHP regex-testija funktsiooni algust ja lõppu
- "" / muster / "" on muster, mille peame sobitama
- "subjekt" on tekstistring, millega sobitada
Vaatame nüüd praktilisi näiteid, mis rakendavad ülaltoodud PHP regex-funktsioone.
PHP Preg_match ()
Esimene näide kasutab PHP-funktsioonis preg_match (), et teostada antud URL-is sõna guru lihtsat mustrivastet.
Allolev kood näitab ülaltoodud näite testija funktsiooni preg_match () rakendamist.
Sirvige URL-i http: //localhost/phptuts/preg_match_simple.php
Vaatame koodi osa, mis vastutab meie väljundi "preg_match ('/ guru /', $ my_url)" eest SIIN,
- "preg_match (…)" on PHP regex-funktsioon
- "'/ guru /'" on regulaaravaldise muster, mis sobib
- "$ my_url" on muutuja, mis sisaldab sobitatavat teksti.
Allpool olev skeem võtab kokku ülaltoodud punktid
PHP Preg_split ()
Vaatame nüüd veel ühte näidet, mis kasutab funktsiooni preg_split () PHP-s.
Võtame stringi fraasi ja plahvatame selle massiiviks; sobitatav muster on üks tühik.
Selles näites kasutatav tekstistring on "Ma armastan regulaaravaldisi".
Allolev kood illustreerib ülaltoodud näite rakendamist.
Sirvige URL-i http: //localhost/phptuts/preg_split.php
PHP Preg_replace ()
Vaatame nüüd PHP funktsiooni preg_replace (), mis täidab mustri vaste ja asendab mustri millegi muuga.
Allolev kood otsib stringis sõna guru.
See asendab sõna guru sõnaga guru, mida ümbritseb taustavärvi esile tõstev css-kood.
Eeldades, et olete salvestanud faili preg_replace.php, brauseri URL-i http: //localhost/phptuts/preg_replace.php
Regulaaravaldise metamärgid
Ülaltoodud näidetes kasutati väga põhilisi mustreid; metamärgid võimaldavad meil lihtsalt teha keerulisemaid mustrivasteid, näiteks testida e-posti aadressi kehtivust. Vaatame nüüd tavaliselt kasutatavaid metamärke.
Metakarakter | Kirjeldus | Näide |
---|---|---|
. | Sobib ükskõik millise tähemärgiga, välja arvatud uus rida | /./ sobib kõigega, millel on üks märk |
^ | Sobib tähemärgi alguse või stringiga / välistab | / PH / sobib mis tahes stringiga, mis algab PH-ga |
$ | Vastab stringi lõpus olevale mustrile | / com $ / sobib guru99.com, yahoo.com jne |
* | Sobib mis tahes nulli (0) või rohkemaga | / com * / sobib arvuti, side jne |
+ | Nõuab, et eelnevad tähemärgid ilmuksid vähemalt üks kord | / yah + oo / sobib yahoo |
\ | Kasutatakse metakangelaste eest põgenemiseks | /yahoo+\.com/ käsitleb punkti sõnasõnalise väärtusena |
[…] | Iseloomuklass | / [abc] / vastab abc-le |
az | Sobib väiketähtedega | / az / sobib lahedaks, õnnelikuks jne. |
AZ | Vastab suurtähtedele | / AZ / sobib MIS, KUIDAS, MIKS jne. |
0–9 | Sobib mis tahes arvuga vahemikus 0 kuni 9 | / 0-4 / vastab 0,1,2,3,4 |
Ülaltoodud loendis on toodud ainult regulaaravaldistes kõige sagedamini kasutatavad metamärgid.
Vaatame nüüd üsna keerukat näidet, mis kontrollib e-posti aadressi kehtivust.
Malli "[/^[a-zA-Z0-9._-]+@[a-zA-Z0-9-]+\.[a-zA-Z.]{2,5}$/] selgitamine "
SIIN,
- "" /… / "" Alustab ja lõpetab regulaaravaldise
- "[a-zA-Z0-9 ._-]" sobib mis tahes väikeste või väikeste tähtedega, numbritega vahemikus 0–9 ning punktide, alakriipsude või kriipsudega.
- "+ @ [a-zA-Z0-9-]" sobib sümboliga @, millele järgnevad väikesed või suured tähed, numbrid vahemikus 0 kuni 9 või kriipsud.
- "+ \. [a-zA-Z.] {2,5} $ /" põgeneb täppist tagasilöögi abil, seejärel sobib mis tahes väikeste või väikeste tähtedega, mille tähe pikkus on vahemikus 2 kuni 5.
Sirvige URL-i http: //localhost/phptuts/preg_match.php
Nagu ülaltoodud jaotise näite põhjal näha, on metamärgid mustrite sobitamisel väga võimsad.
Kokkuvõte
- Regulaarne avaldis või regex PHP-s on mustrivastamise algoritm
- Regulaaravaldised on väga kasulikud valideerimiskontrollide läbiviimisel, HTML-i mallisüsteemide loomisel, mis tuvastavad silte jne
- PHP-s on sisse ehitatud funktsioonid, nimelt PHP preg_match (), PHP preg_split () ja PHP preg_replace (), mis toetavad regulaaravaldisi.
- Metamärgid võimaldavad meil luua keerukaid mustreid