Een reguliere expressie beschrijft een patroon van tekens. Reguliere expressies worden doorgaans gebruikt om te bevestigen dat een tekstwaarde voldoet aan een specifiek patroon (bijvoorbeeld om te bevestigen dat een telefoonnummer het juiste aantal cijfers bevat) of om delen van een tekstwaarde te vervangen die overeenkomen met een specifiek patroon.
Reguliere expressies kunnen eenvoudig zijn. Stel dat u bijvoorbeeld wilt bevestigen dat een specifieke tekenreeks overeenkomt met 'ABC', of dat u elke 'ABC' die in een tekenreeks wordt gevonden, wilt vervangen door andere tekst. In dat geval kunt u gebruikmaken van de volgende reguliere expressie, die het patroon definieert dat achtereenvolgens uit de letters A, B en C bestaat:
/ABC/
Het letterlijke gedeelte van de reguliere expressie wordt afgebakend door de slash (
/
).
Reguliere-expressiepatronen kunnen ook complex en cryptisch overkomen, zoals de volgende expressie voor een geldig e-mailadres:
/([0-9a-zA-Z]+[-._+&])*[0-9a-zA-Z]+@([-0-9a-zA-Z]+[.])+[a-zA-Z]{2,6}/
Meestal zult u reguliere expressies gebruiken om te zoeken naar patronen in tekenreeksen en om tekens te vervangen. In dat geval zult u een reguliere-expressieobject maken en dit gebruiken als parameter voor een methode voor de klasse String. Bij de volgende methoden van de klasse String worden reguliere expressies als parameter gebruikt:
match()
,
replace()
,
search()
en
split()
. Zie
Patronen in tekenreeksen zoeken en subtekenreeksen vervangen
voor meer informatie over deze methoden.
De klasse RegExp bevat de volgende methoden:
test()
en
exec()
. Zie
Methoden voor het gebruik van reguliere expressies met tekenreeksen
voor meer informatie.
Belangrijke concepten en termen
De volgende referentielijst bevat belangrijke termen die relevant zijn voor deze functie:
-
Escape-teken
-
Een teken dat aangeeft dat het volgteken moet worden behandeld als een metateken in plaats van een letterlijk teken. In de syntaxis van reguliere expressies is de backslash (\) het escape-teken; daarom stelt een backslash gevolgd door een ander teken een speciale code voor in plaats van het teken zelf.
-
Markering
-
Een teken dat een optie aangeeft over de wijze waarop het reguliere-expressiepatroon moet worden gebruikt, bijvoorbeeld of er onderscheid moet worden gemaakt tussen hoofdletters en kleine letters.
-
Metateken
-
Een teken dat een speciale betekenis heeft in een reguliere-expressiepatroon en dus niet het teken in het patroon letterlijk vertegenwoordigt.
-
Kwantor
-
Een teken (of meerdere tekens) dat aangeeft hoe vaak een deel van het patroon moet worden herhaald. Een kwantor kan bijvoorbeeld worden gebruikt om aan te geven dat postcodes in de Verenigde Staten uit vijf of negen cijfers moeten bestaan.
-
Reguliere expressie
-
Een programma-instructie voor het definiëren van een patroon van tekens. Deze instructie kan worden gebruikt om te bevestigen of andere tekenreeksen overeenkomen met dat patroon, of om delen van een tekenreeks te vervangen.