Funkcija preg_match() je vgrajena funkcija PHP, ki izvaja ujemanje regularnega izraza. Ta funkcija v nizu išče vzorec in vrne true, če vzorec obstaja, sicer vrne false.
Na splošno se iskanje začne od začetka parametra niza $subject. Izbirni parameter $offset se uporablja za začetek iskanja od navedenega položaja.
Sintaksa
int preg_match (string $pattern, string $subject, array $matches, int $flags, int $offset)
Opomba: $offset je izbirni parameter, ki določa položaj, od katerega naj se začne iskanje.
Parametri
Ta funkcija sprejme pet parametrov, ki so opisani spodaj:
vzorec
Je nizovni parameter. Ta parameter vsebuje vzorec za iskanje kot niz.
predmet
Ta parameter vsebuje vhodni niz, v katerem iščemo vzorec.
tekme
Če je naveden parameter za ujemanje, bo vseboval rezultate iskanja.
tekme[0] - Vsebovala bo besedilo, ki se ujema s celotnim vzorcem.
tekme [1] - Vseboval bo besedilo, ki se je ujemalo s prvim zajetim podvzorcem v oklepajih itd.
zastave
dodajte v matriko v Javi
Zastavice imajo lahko naslednje zastavice, navedene spodaj:
odmik
Privzeto se iskanje začne od začetka parametra $subject. Parameter offset se uporablja za določitev mesta, kjer se bo iskanje začelo. Je neobvezen parameter.
Vrsta povratka
Funkcija preg_match() vrne true, če se vzorec ujema, sicer vrne false.
Opomba: Če želite samo preveriti, ali je en niz vsebovan v drugem nizu, ne uporabite funkcije preg_match(). Uporabite funkcijo strpos(), saj bo hitrejša.
Primeri
<?php //initialize a variable of string type $site = 'javatpoint'; preg_match('/(java)(t)(point)/', $site, $matches, PREG_OFFSET_CAPTURE); //display the matches result print_r($matches); ?> Izhod:
Array ( [0] => Array ( [0] => javatpoint [1] => 0 ) [1] => Array ( [0] => java [1] => 0 ) [2] => Array ( [0] => t [1] => 4 ) [3] => Array ( [0] => point [1] => 5 ) )
Zgornji rezultat lahko vidimo, kot je podan spodaj, da ga bolje razumemo.
Array ( [0] => Array ( [0] => javatpoint [1] => 0 ) [1] => Array ( [0] => java [1] => 0 ) [2] => Array ( [0] => t [1] => 4 ) [3] => Array ( [0] => point [1] => 5 ) )
Primeri: iskanje brez upoštevanja velikih in malih črk
<?php //initialize a variable of string type $website = 'JTP is a best online platform to learn.'; //case insensitive search for word jtp //The 'i' after pattern delimiter indicates case-insensitive search $res = preg_match('/jtp/i', $website, $matches); if ($res) { echo 'Pattern matched in string.</br>'; print_r($matches); } else { echo 'Pattern not matched in string.'; } ?> Izhod:
Pattern matched in string. Array ( [0] => JTP )
Primeri: z uporabo besedne meje ()
<?php /* The indicates the word boundary in the pattern. So, it matches only the distinct word like 'web', and words like 'coreweb' or ' webinar' do not match partially.*/ if (preg_match('/web/i', 'PHP is a web scripting language.')) { echo 'A match was found. </br>'; } else { echo 'A match was not found. <br>'; } if (preg_match('/web/i', 'PHP is a website scripting language.')) { echo 'A match was found.'; } else { echo 'A match was not found.'; } ?> Izhod:
A match was found. A match was not found.
Primeri: pridobite ime domene iz URL-ja
Izhod:
omrežni sloj v računalniških omrežjih
Domain name is: javatpoint.com
Sintaksa regularnega izraza (regularni izraz).
| [abc] | Ujema se z enim znakom - a, b ali c |
| [^abc] | Ujema se s katerim koli posameznim znakom razen a, b ali c |
| [a-z] | Ujema se s katerim koli posameznim znakom v obsegu a–z |
| [a-zA-Z] | Vsak posamezen znak v obsegu a-z ali A-Z |
| ^ | Začetek vrstice |
| $ | Konec vrstice |
| A | Začetek niza |
| Konec niza | |
| . | Vsak posamezen znak |
| s | Kateri koli presledek |
| S | Kateri koli znak, ki ni presledek |
| d | Katera koli številka |
| D | Vse, kar ni številka |
| In | Kateri koli besedni znak (črka, številka, podčrtaj) |
| IN | Vsak nebesedni znak |
| Preverjevalnik meja besed | |
| /?/ | Začne in konča regularni izraz |
| (?) | Zajemi vse, kar je v oklepaju () |
| (a|b) | a ali b |
| a? | Nič ali ena od a |
| a* | Nič ali več a |
| a+ | Eden ali več od a |
| a{3} | Točno 3 od a |
| a{3,} | 3 ali več a |
| a{3,6} | Med 3. in 6. uro a |
| jaz | Preverjanje ne razlikuje med velikimi in malimi črkami |
| m | Naj se pike ujemajo z novo vrstico |
| x | Ignoriraj presledek v regularnem izrazu |