RegEx-Ausdrücke erstellen
In IBM® Cloud Logskönnen Sie Parserregeln verwenden, um die Struktur Ihrer Daten zu steuern, indem Sie RegEx-Ausdrücke anwenden, bevor die Daten für die Suche indexiert werden.
IBM Cloud Logs verwendet die RegEx Golang-Variante.
Bei einem RegEx Muster wird zwischen Groß- und Kleinschreibung unterschieden.
Quantifizierer
| Quantifizierer | Übereinstimmungen |
|---|---|
* |
0 oder mehr Übereinstimmungen mit dem vorherigen Zeichen oder der vorherigen Zeichenfolge. |
? |
0 oder 1 entspricht dem vorherigen Zeichen oder der vorherigen Zeichenfolge. |
+ |
1 oder mehr Übereinstimmungen mit dem vorherigen Zeichen oder der vorherigen Zeichenfolge. |
{N} |
Entspricht genau dem N-fachen des vorherigen Zeichens. |
{N,} |
Entspricht N oder mehr dem vorherigen Zeichen. |
{N,Z} |
Übereinstimmung zwischen N und Z mal dem vorherigen Zeichen. |
Zeichen
| Zeichen | Übereinstimmungen |
|---|---|
. |
Entspricht einem beliebigen einzelnen Zeichen. |
.* |
Gleicht alles ab. |
\d |
Entspricht 1 einzelnen Ziffer. |
\d* |
Entspricht N Ziffern. |
\D |
Entspricht einem beliebigen Symbol mit Ausnahme von Ziffern. |
\w |
Entspricht einem Buchstaben, einer Ziffer oder einem Unterstreichungszeichen. |
\W |
Entspricht einem beliebigen Zeichen, das kein Buchstabe, Ziffer oder Unterstreichungszeichen ist. |
\s |
Entspricht einem Leerzeichen. |
\S |
Entspricht einem beliebigen Zeichen außer Leerzeichen, Tabulatorzeichen, Zeilenumbruch oder Rücklauf. |
\s* |
Entspricht N Leerzeichen. |
\S |
Entspricht einem beliebigen Zeichen, das kein Leerzeichen ist. |
\S* |
Entspricht N Zeichen, die keine Leerzeichen sind. |
Anchors
| Anchors | Übereinstimmungen |
|---|---|
\b |
Definiert eine Wortgrenze. |
^ |
Stimmt mit dem Anfang einer Zeichenfolge oder Zeile überein. |
$ |
Passt auf das Ende einer Zeichenkette oder Zeile. |
Gruppierungen
| Gruppierung | Übereinstimmungen |
|---|---|
[ ] |
Steht für eine Gruppe von Zeichen. |
( ) |
Wird zum Gruppieren von Mustern verwendet |
[abcd...] |
Entspricht 1 Zeichen der in den eckigen Klammern enthaltenen Zeichen. |
[a-z] |
Entspricht 1 Zeichen im Bereich von a bis z. |
[^a-z] |
Entspricht einem Zeichen, das nicht im Bereich von a bis z liegt. |
[....]+ |
Entspricht 1 oder mehr Zeichen der in den eckigen Klammern aufgelisteten Zeichen. |
[....]? |
Entspricht 1 oder 0 Zeichen der in den eckigen Klammern aufgelisteten Zeichen. |
[^"]* |
Entspricht N Zeichen außer doppelten Anführungszeichen. |
[^"\s]* |
Entspricht N Zeichen mit Ausnahme von Anführungszeichen und Leerzeichen. |
[^.]* |
Entspricht 0 oder mehr Nicht-Punkten. |
Benannte Erfassungsgruppen
Sie können benannte erfasste Gruppen in einem RegEx verwenden, um neue Felder aus vorhandenen Daten im Protokollsatz zu definieren.
Eine Erfassungsgruppe hat das folgende Format:
(?P<fieldName>RegularExpression)
Wo
-
?Pstellt den Anfang einer Erfassungsgruppe dar. -
fieldNamemuss auf den Namen des hinzuzufügenden Felds gesetzt werden. -
RegularExpressionstellt den RegEx dar, der den Wert des neuen Felds definiert.RegEx muss nicht mit dem gesamten Protokoll übereinstimmen.