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 |