*   >> Læs Uddannelse artikler >> science >> programming

Flere regulært udtryk Mønstre i Perl

Regular Expressions i Perl for nybegyndere - Del 3 Indledning Dette er den tredje del af min serie, Regular Expressions i Perl for nybegyndere. I denne del af serien, fortsætter vi med at analysere mønstre i Perl Regular Expressions. Matchende gentagelser i den tilgængelige streng, kan tegn eller grupper af tegn gentage sig selv. Vi skal tale om grupper af karakterer, som et emne, senere. For nu, lad os koncentrere os om enkelt tegn gentage sig. Der er kvantor metategn, der tillader os at matche gentagelse af enkelte tegn eller grupper af tegn i den tilgængelige streng.

Disse meta tegn er:?, *, +, Og {}. De giver os mulighed for at træffe beslutning om antallet af gentagelser, vi er på udkig efter. Kvantorer sættes umiddelbart efter karakter, karakter klasse, eller gruppering (se senere) i regex. Her er de med deres betydninger, hvor x henviser til en bestemt karakter: x *: betyder match »x« 0 eller flere gange, dvs, et vilkårligt antal gange x +: betyder match 'X' 1 eller flere gange, dvs., mindst når x? Betyder match »x« 0 eller 1 gange x {n,}:: betyder match 'X' i det mindste n eller flere gange; Bemærk kommaet.

x {n}: match 'X' nøjagtigt n gange x {n, m}: match 'X' mindst n gange, men ikke mere end M gange. Bemærk: bogstavet "X" ovenfor står for enhver karakter af en tekst, fx 'b', 'c', 'd', '1', '2' osv kvalifikationskamp indtastes i et mønster (regex). Eksempler * Matcher det foregående punkt 0 eller flere gange. /o * /kampe »o« i "spøgelse" af den tilgængelige streng, "Et spøgelse booooed". Det ville også matche "oooo" i tilgængelige streng. For at give regex mere betyder, at du er nødt til at kombinere det med andre karakterer.

For eksempel /Bo * /kampe 'boooo "i" Et spøgelse booooed "og" b "i" En fugl warbled ", men intet i" En ged gryntede ", selvom denne sidste streng har en' o '. + Matcher det foregående punkt 1 eller flere gange. Svarende til {1,} - se nedenfor. /a + /matcher "a" i "slik", og alle de a'er i "caaaaaaandy". ? Matcher det foregående punkt 0 eller 1 gang. /e? le? /matcher "el" i "engel" og "le" i "vinkel".. /e? le? /midler, har du et ord, som har "l 'indledes med» e «eventuelt og eventuelt efterfulgt af» e «. Det betyder, vil det også matche "liggende".

Ved den tid, du er færdig med denne serie, vil du vide, hvordan at ændre regex, at begrænse det til at matche kun "engel" eller "vinkel". {n} hvor n er et positivt heltal. Dette matcher mindst n forekomster af det foregående element. For eksempel /en {2,} svarer ikke til det

Page   <<       [1] [2] >>
Copyright © 2008 - 2016 Læs Uddannelse artikler,https://uddannelse.nmjjxx.com All rights reserved.