Det vanlige uttrykket er et bestemt mønster som kan brukes til å matche, søke og erstatte en bestemt streng i tekstdata. Det er et kraftig trekk ved ethvert programmeringsspråk. Det brukes hovedsakelig til å utføre forskjellige typer skjemavalideringer, for eksempel validering av e -post, sjekke telefonformatet, validering av brukernavn og passordfelt i påloggingsskjemaet osv. Et bestemt innhold i teksten kan søkes og erstattes ved hjelp av et vanlig uttrykksmønster. Det kalles også regex eller regexp. Ulike typer symboler brukes til å definere regex -mønsteret.
Mange innebygde funksjoner finnes i PHP for det vanlige uttrykket. preg_match () -funksjonen er en av dem. Denne funksjonen brukes til å matche et bestemt mønster i strengdata. Hvordan preg_match () -funksjonen kan brukes i PHP for å utføre forskjellige oppgaver blir forklart i denne opplæringen.
Syntaks:
Int eller falsk preg_match (streng $ mønster, streng $ emne [, array & $ matches = null [, int $ flagg = 0 [, int $ offset = 0]]])Denne funksjonen kan ta fem argumenter. Det første argumentet, $ mønster, er obligatorisk, som definerer mønsteret for matching. Det andre argumentet, $ emne, er obligatorisk, og inneholder strengdataene som mønsteret vil bli brukt. Det tredje argumentet, $ kamper, er valgfritt og den returnerer en matrise basert på kampen. Det fjerde argumentet, $ flagg, er valgfritt, som inneholder forskjellige typer flaggverdier basert på kampen. Det femte argumentet, $ Offset, er valgfritt, og kan brukes til å definere startposisjonen til søket.
Eksempel 1: Match mønsteret på en saksfølsom og case-ufølsom måte
Følgende eksempel viser bruken av preg_match () -funksjonen for å matche strengen på en saksfølsom og case-ufølsom måte. Opprett en PHP -fil med følgende skript.
Her brukes tre mønstre for å bruke i tre preg_match () -funksjoner. Det første mønsteret, '/Som/', brukes til å matche strengen på en saksfølsom måte. Det andre mønsteret, '/som/', brukes til å matche strengen på en saksfølsom måte. Det tredje mønsteret, 'Som jeg', brukes til å matche strengen på en følsom måte. search_pattern () Funksjon er definert i skriptet for å bruke preg_match () -funksjonen for matching, og det skriver ut meldingen basert på den returnerte verdien av denne funksjonen.
// definere tekstenProduksjon:
Følgende utgang vises etter å ha kjørt skriptet fra serveren. Den første linjen viser teksten der mønstrene ble gjennomsøkt. Den andre linjen viser utgangen fra det første mønsteret. Den tredje linjen viser utgangen fra det andre mønsteret. Den fjerde linjen viser utgangen fra det tredje mønsteret.
Eksempel 2: Valider nettadressen
Følgende eksempel viser måten å validere URL -adressen ved hjelp av preg_match () -funksjonen. Opprett en PHP -fil med følgende skript.
En URL -verdi er tilordnet i variabelen $ URL for testing. '@^(?: https: //)?([^/]+)@i 'streng brukes som et mønster i preg_match () -funksjonen for å sjekke om URL -adressen er gyldig eller ikke. Hvis det er gyldig, vil vertsnavnet og domenenavnet bli skrevet ut, ellers blir feilmeldingen skrevet ut.
// definere URL -enProduksjon:
Følgende utgang vises etter å ha kjørt skriptet fra serveren. Den medfølgende URL -en i skriptet er gyldig. Så utdataene viser verdiene til $ -kampene, nettnavnet til URL -en og URL.
Eksempel 3: Søkemønster med flagg- og forskyvningsverdier
Følgende eksempel viser bruken av flagg- og forskyvningsverdiene i preg_match () -funksjonen. Opprett en PHP -fil med følgende skript.
Tre mønstre brukes i skriptet for tre typer matching. I den første preg_match () -funksjonen, '/(Bangla) (Desh)/' brukes som mønsteret og flaggverdien brukes, preg_offset_capture. Verdiene til $ kamper Variabel vil skrives ut basert på utgangen fra den første preg_match () -funksjonen. I den andre preg_match () -funksjonen, '/(bangla) (glad)*(desh)/i', brukes som mønsteret og flaggverdien, preg_unmatched_as_null brukes. Hvis noen del av mønsteret ikke stemmer overens, blir en nullverdi lagret i matrisen. Verdiene til $ kamper Variabel vil skrives ut basert på utgangen fra den andre preg_match () -funksjonen. I den tredje preg_match () -funksjonen, '/Glad/' brukes som mønsteret, brukes flaggverdien, preg_offset_capture og 3 brukes som forskyvningsverdi. Verdiene til $ kamper Variabel vil skrives ut basert på utgangen fra den tredje preg_match () -funksjonen.
// definere tekstverdien";
print_r ($ matches);
ekko "
";
print_r ($ matches);
ekko "
";";
print_r ($ matches);
ekko "
Produksjon:
Følgende utgang vises etter å ha kjørt skriptet fra serveren.
Konklusjon
Bruken av preg_match () -funksjonen er forklart i denne opplæringen ved hjelp av flere eksempler. Bruken av forskjellige argumenter for denne funksjonen er også vist her. Leserne vil kunne bruke denne funksjonen riktig i manuset sitt etter å ha lest denne opplæringen.