RE2-Spezifikationen für URL-Zuordnungen

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 \cx nicht als Control-X-Zeichen.
  • RE2 erkennt die Operatoren für die atomare Gruppierung (?>...) und ++ nicht.
  • RE2 erkennt \C, \G oder \X nicht.
  • 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:

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