Die Leistungsfähigkeit regulärer Ausdrücke beruht auf ihrer Fähigkeit, Muster auszuwählen und zu wiederholen. Manchen Zeichen werden besondere Bedeutungen zugewiesen, sodass sie nicht mehr einfach nur sich selbst darstellen. Solche codierten Zeichen mit besonderer Bedeutung im Muster werden Metazeichen genannt.
Es gibt zwei verschiedene Metazeichen: eines kann überall außerhalb der eckigen Klammern im Muster verwendet werden, das andere muss innerhalb der eckigen Klammern verwendet werden. Die außerhalb der eckigen Klammern verwendeten Metazeichen lauten wie folgt:
wird im Allgemeinen verwendet, um die Zeichen
^
am Anfang des Assertionsziels zu maskieren ( oder im Mehrzeilenmodus ist es der Anfang der Zeile)
$
Legt die Endposition des Ziels fest (oder im Mehrzeilenmodus ist es das Ende der Zeile). )
.
entspricht jedem Zeichen außer Zeilenumbruch (Standard)
[
Startzeichenklassendefinition
]
Zeichenklassendefinition beenden
|
Eine optionale Verzweigung starten
(
Start-Tag der Untergruppe
)
Endtag der Untergruppe
?
wird als Quantifizierer verwendet und gibt 0 oder 1 Übereinstimmungen an. Wird nach dem Quantifizierer platziert, um die gierige Natur des Quantifizierers zu ändern.
*
Quantifizierer, 0 oder mehr Übereinstimmungen
Quantifizierer, 1 oder mehr Übereinstimmungen
{
Benutzerdefiniertes Quantifizierer-Start-Tag
}
Benutzerdefiniertes Quantifizierer-End-Tag
Der Teil in eckigen Klammern im Muster wird „Zeichenklasse“ genannt. Die einzigen in einer Zeichenklasse verfügbaren Metazeichen sind die folgenden:
Das Escape-Zeichen
^
wird nur als erstes Zeichen (eckige Klammern) verwendet ), gibt an, dass die Zeichenklassennegierung
-
den Zeichenbereich