Wenn Sie URL-Zuordnungen mit Regeln für das Traffic-Routing konfigurieren möchten, die reguläre Ausdrücke verwenden, müssen Sie die Anforderungen und Einschränkungen der RE2-Syntax für reguläre Ausdrücke kennen.
Für RE2 gelten die folgenden integrierten Einschränkungen:
- RE2 unterstützt keine Lookahead- oder Lookbehind-Assertionen und auch keine Rückverweise. Insbesondere werden die folgenden Rückverweisoperatoren nicht unterstützt:
(?=)- positiver Lookahead(?!)- negativer Lookahead(?<=)- positiver Lookbehind(?<!)- negativer Lookbehind\N- Rückverweis, wobei N eine Ganzzahl ist
- RE2 erkennt
\cxnicht als Control-X-Zeichen. - RE2 erkennt die Operatoren für die atomare Gruppierung
(?>...)und++nicht. - RE2 erkennt
\C,\Goder\Xnicht. - RE2 erkennt keine bedingten Unterausdrücke
(?(...)...), Kommentare(?#...), Musterverweise(?R) (?1) (?P>foo), oder C-Callouts(?C...).
Zusätzlich zu den oben beschriebenen Einschränkungen für RE2 gelten weitere Einschränkungen für die Syntax regulärer Ausdrücke, die durch die folgende Zulassungsliste definiert werden:
- Operatoren für einzelne Zeichen sind zulässig.
- Gruppen dürfen nur Operatoren für Teiltreffer enthalten.
- Gruppen sind nur ohne Wiederholungen zulässig.
- Die Zeichenwiederholung ist nur in einem einzelnen regulären Ausdruck zusammen mit Folgendem zulässig:
- Operatoren für leere Strings
- Andere Wiederholungen
- Bereiche
- Wiederholungen von Bereichen
- Bereiche dürfen nur Folgendes enthalten:
- Zeichenbereich
- Ziffernbereich
- Symbole, die in den für Bereiche zulässigen Zeichen aufgeführt sind
Leere Strings und Analoga von leeren Strings
| Operator | Beschreibung |
|---|---|
^ |
Am Anfang des Texts oder der Zeile (m=true) |
$ |
Am Ende des Texts (wie \z, nicht \Z) oder der Zeile (m=true) |
\A |
Am Anfang des Texts |
\b |
An der ASCII-Wortgrenze (\w auf einer Seite und \W, \A oder \z auf der anderen) |
\B |
Nicht an der ASCII-Wortgrenze |
\g |
Am Anfang des durchsuchten Untertexts |
\G |
Am Ende des letzten Treffers |
\z |
Am Ende des Texts |
Wiederholungen
| Operator | Beschreibung |
|---|---|
x* |
Null oder mehr x, bevorzugt mehr |
x+ |
Ein oder mehr x, bevorzugt mehr |
x? |
Null oder ein x, bevorzugt eins |
x{n,m} |
N oder n+1 oder ... oder m x, bevorzugt mehr |
x{n,} |
N oder mehr x, bevorzugt mehr |
x{n} |
Genau n x |
x*? |
Null oder mehr x, bevorzugt weniger |