Følgende kode gir en match: min $ året = "2009"; $ året = ~ /\\ d {2,4} /Dette er en enkel validering som gjør at året er minst 2 siffer og ikke mer enn 4 siffer. Du kan prøve ovenfor med følgende program: bruke strenge; min $ året = "2009"; if ($ året = ~ /\\ d {2,4} /) {print "matchet"; } Else {print "Not matchet"; } Matchende Veksling Vi kan matche ulike tegnstrenger med vekslingen metategn '|'. For å matche 'gris' eller 'sauer', danner vi regex, /gris | sau /. Perl vil prøve å matche regex på et tidligst mulig tidspunkt i tilgjengelig strengen.
Ved hver tegnposisjon, vil Perl først prøve å matche det første alternativet, "gris". Hvis 'gris' ikke stemmer overens, vil Perl deretter prøve neste alternativ, "sauer". Hvis 'sauer' samsvarer ikke med heller, så Perl går videre til neste posisjon, og starter med det første alternativet på nytt Noen eksempler: Følgende produserer en kamp: "griser er en gruppe dyr" = ~ /gris | sau | ku /Her 'gris' er matchet. Det finnes ingen "sauer" eller "ku" i den tilgjengelige streng. Merk at i den tilgjengelige streng, er det sett av bokstaver, 'p', 'i', og 'g' som er matchet.
Det er ikke 'gris' som matchet. Det finnes ingen "s" etter "gris" i regex. 'gris' er en sub-string blant alle karakterene i den tilgjengelige strengen som matchet. Vær også oppmerksom på at det ikke er et ord som er matchet, men en sub-streng (som består av tegn og kan også være ett tegn). Legg merke til også, at plassen i den tilgjengelige strengen er et tegn, som kan være medlem av en streng sub streng. Det jeg nettopp har sagt, gjelder alle andre matching, ikke bare alter. Følgende produserer en kamp: "sauer er en gruppe dyr" = ~ /gris | sau | ku /Her 'sauer' er matchet.
Det finnes ingen "gris" eller "ku" i den tilgjengelige streng. Jakten ikke se "gris", så det passet 'sauer' Følgende produserer en kamp: "kyr er en gruppe dyr" = ~ /gris | sau | ku /Her 'ku' er matchet. Det fi