ADC

Operationen für reguläre Ausdrücke

In der folgenden Tabelle werden die Operatoren beschrieben, die mit regulären Ausdrücken arbeiten. Die Operation, die von einem Operator für reguläre Ausdrücke in einem bestimmten Standard-Syntaxausdruck ausgeführt wird, hängt davon ab, ob das Ausdruckspräfix Text oder HTTP-Header identifiziert. Vorgänge, die Header auswerten, überschreiben textbasierte Vorgänge für alle Instanzen des angegebenen Headertyps. Wenn Sie einen Operator verwenden, <text> ersetzen Sie durch das standardmäßige Syntaxausdruckpräfix, das Sie für die Identifizierung von Text konfigurieren möchten.

Regulärer Ausdruck Beschreibung
.BEFORE_REGEX () Wählt den Text aus, der vor der Zeichenfolge steht, die dem Argument entspricht. Wenn der reguläre Ausdruck keinen Daten im Ziel entspricht, gibt der Ausdruck ein Textobjekt der Länge 0 zurück. Der folgende Ausdruck wählt die Zeichenfolge "text" aus "text/plain". http.res.header ("content-type") .before_regex (re#/#)
.AFTER_REGEX () Wählt den Text aus, der der Zeichenfolge folgt, die dem Argument entspricht. Wenn der reguläre Ausdruck keinem Text im Ziel entspricht, gibt der Ausdruck ein Textobjekt der Länge 0 zurück. Der folgende Ausdruck extrahiert "Beispiel" aus "MyExample": http.req.header ("etag") .after_regex (re/mein/)
.REGEX_SELECT () Wählt eine Zeichenfolge aus, die dem Argument entspricht. Wenn der reguläre Ausdruck nicht mit dem Ziel übereinstimmt, wird ein Textobjekt der Länge 0 zurückgegeben. Das folgende Beispiel extrahiert die Zeichenfolge "NS-CACHE-9.0:90" aus einem Via-Header: http.req.header ("via") .regex_select (re! NS-cache-d.d:s*d {1,3}!)
.REGEX_MATCH () Gibt TRUE zurück, wenn das Ziel einem Argument von bis zu 1499 Zeichen entspricht. Der reguläre Ausdruck muss das folgende Format haben: re regulärer Ausdruck< delimiter> Beide Trennzeichen müssen gleich sein. Darüber hinaus muss der reguläre Ausdruck der PERL-kompatiblen (PCRE) Library Syntax für reguläre Ausdrücke entsprechen. Weitere Information finden Sie unter http://www.pcre.org/pcre.txt. Siehe insbesondere die Handbuchseite pcrepattern. Beachten Sie jedoch Folgendes: Rückverweise sind nicht zulässig. Rekursive reguläre Ausdrücke werden nicht empfohlen. Der Punkt-Metazeichen entspricht auch dem Zeilenumbruch. Der Unicode-Zeichensatz wird nicht unterstützt. SET_TEXT_MODE (IGNORECASE) überschreibt die (? i) interne Option im regulären Ausdruck angegeben. Im Folgenden sind Beispiele: http.req.hostname.regex_match (re/[[:alpha:]] + (abc) {2,3}/) und http.req.url.set_text_mode (urlencoded) .regex_match (re# (a*b+c*) #) Das folgende Beispiel stimmt mit ab und Ab überein: http.req.url.rex_match (regex_match (regex_match (regex_match (regex_match (regex_match /ein (? i) b/) Das folgende Beispiel stimmt mit ab, ab, Ab und AB überein: http.req.url.set_text_mode (ignorecase) .regex_match (re/ab/) Das folgende Beispiel führt eine mehrzeilige Übereinstimmung ohne Berücksichtigung der Groß- und Kleinschreibung durch, bei der das Punkt-Meta-Zeichen auch mit einem Zeilenzeilenzeichen übereinstimmt: http.req.body.regex_match (re/ (? ixm) (^ab (.*) cd$)/)
Operationen für reguläre Ausdrücke

In diesem Artikel