JavaScript String Regular Expressions - Del 2Introduction Dette er anden del af min serie, JavaScript String Regular Expressions. I denne del af serien, vi begynde at analysere mønstre i JavaScript Regular Expressions
Bemærk:. Hvis du ikke kan se koden, eller hvis du tror noget mangler, bare kontakte mig på [email protected]. Det vil sige, kontakt mig for det mindste problem, du har om hvad der er blevet skrevet.
Tegn ClassesThe kantede parenteser En karakter klasse giver et sæt af mulige tegn, hvor den ene af dem ville matche på et bestemt punkt, en karakter , i emnet streng. Karakter klasser er angivet med parentes [...], med sættet (klasse) af tegn, der skal muligvis matches indeni. Her er nogle eksempler: Lad dit emne strengen være "Han har en kat". Du kan vide, at han har et dyr, men det er ligegyldigt for dig, hvilket dyr han har. Du vil være tilfreds, hvis han har en kat, bat eller en rotte.
Bemærk, at ordene, "kat", "bat" og "rotte", hver har "på", men begynder med et "C" eller "b" eller "r". Regex til at kontrollere dette er /[bcr] på /producerer følgende en match, hvis ("Han har en kat.". Søgning (/[bcr] på /)! = -1) Her på grund af de kantede parenteser vi fortolker regex som følger: mønstret skal matche alle ord, hvis første tegn er et "b", "c", eller "t", resten af tegnene er »på«. De kantede parenteser angiver en klasse af elementer. Det er imidlertid et hvilket som helst element i klasse (firkantede parenteser), der skal matches, ikke dem alle sammen.
Her, klassen er den gruppe af breve, "b", "c" og "r"; kun én skal matche sammenholdt med "ved". Der er stadig mere vi nødt til at vide om karakteren klassen. Vi skal se, at later.Range af CharactersThe '-' Tegn Der kan komme et tidspunkt, hvor du ønsker at matche enhver forekomst af et ciffer mellem 0 og 9, eller en lavere tilfælde karakter mellem "a" til "z", eller stort bogstav mellem A til Z. Det er serier af tegn, og for hver spænder du ønsker at vide, om et tegn i området findes i faget streng. Den '-' Character bruges til dette.
Så området 0 til 9 er betegnet med 0-9; "A" til "z" af a-z; og A til Z af A-Z. Følgende kode giver en match: if ("ID5id" .search (/[0-9] /) = -1!) De kantede parenteser angiver, at ethvert element den indeholder bør testes for matchning. En række figurer er en klasse, og så er du nødt til at bruge de firkantede parenteser, som i ovenstående udtryk. I så fald forekommer et match mellem 5 i intervallet 0 til 9 og 5 i emnet streng, "ID5i