Perl gir opp og erklærer "12345" = ~ /(124 | 123) (46 | 4 | 45) /, for å være falsk, bare når alle mulige veier på alle mulige tegn stillinger er uttømt. X Modifier Detaljer Dette modifier er satt ved å sette x (med små bokstaver) like ved den andre skråstrek av regex. Det vil si: /mønster /x Wwhitespace data tegn i mønsteret er helt ignorert unntatt når rømt eller inne i en tegnklasse, når denne modifier er satt. Når denne modifier er satt, tegn mellom en avkodet # utenfor et tegn klasse og neste \\ n karakter, inkluderende, ignoreres også. Jeg vil illustrere alt dette.
Det står blanke data tegn i mønsteret er helt ignorert unntatt når rømt eller inne i et tegn klasse. Vurdere den tilgjengelige streng: $ availableString = "Jeg er en mann som satt ned."; De følgende to uttrykk med x-modifiserende middel ikke produserer en kamp. $ availableString = ~ /man sitter /x Dette er fordi i regex, single-mellomrom mellom "mann" og "sitter" og "sitter" og "ned" er ikke regnskapsført, med tilstedeværelse av x modifier. Hvis du fjerner disse tilsvarende områder i den tilgjengelige strengen vil du ha en kamp, med x modifier.
Følgende tilgjengelig strengen vil produsere en kamp med ovennevnte regex: $ availableString = "I am a mansittingdown."; Hvis du vil ha den opprinnelige tilgjengelig strengen og regex å matche, så må du unnslippe mellomrom i regex. Følgende uttrykk produserer en kamp med den opprinnelige tilgjengelige streng: $ availableString = ~ /mann \\ sitter \\ ned /x En rømt enkelt mellomrom er "\\". La oss nå snakke om hvit plass i et tegn klasse. Vær oppmerksom på at mellomrom er faktisk [\\ \\ t \\ r \\ n \\ f], ikke bare "\\". Men la oss fortsette vår illustrasjon bruke "\\".
Vi bruker det samme tilgjengelig streng, er at: $ availableString =; "Jeg er en mann som satt ned." Hvis vi ønsker å matche plass foran sittende, etterfulgt av "sitter", med x modifier, da vår regex kan være; /[] Sittende /x Merk at de tomme i