Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
re.regex
Sie können den Abgleich regulärer Ausdrücke in YARA-L 2.0 mit einer der folgenden Syntax definieren:
YARA-L-Syntax verwenden – bezieht sich auf Ereignisse.
Das ist eine allgemeine Darstellung dieser Syntax:
$e.field = /regex/
Verwendung der YARA-L-Syntax: Als Funktion mit den folgenden Parametern:
- Das Feld, auf das der reguläre Ausdruck angewendet wird.
- Regulärer Ausdruck, der als String angegeben wird.
Das ist eine allgemeine Darstellung dieser Syntax:
re.regex($e.field, `regex`)
Beschreibung
Diese Funktion gibt true
zurück, wenn der String einen Teilstring enthält, der mit dem angegebenen regulären Ausdruck übereinstimmt. Es ist nicht erforderlich, .*
am Anfang oder am Ende des regulären Ausdrucks hinzuzufügen.
Hinweise
- Wenn Sie nach dem genauen String oder nur nach einem Präfix oder Suffix suchen möchten, fügen Sie die Ankerzeichen
^
(Beginn) und $
(Ende) in den regulären Ausdruck ein.
/^full$/
stimmt beispielsweise genau mit "full"
überein, während /full/
mit "fullest"
, "lawfull"
und "joyfully"
übereinstimmen kann.
- Wenn das UDM-Feld Zeilenumbruchzeichen enthält, entspricht
regexp
nur der ersten Zeile des UDM-Felds. Wenn Sie erzwingen möchten, dass alle UDM-Felder übereinstimmen, fügen Sie dem regulären Ausdruck ein (?s)
hinzu. Ersetzen Sie beispielsweise /.*allUDM.*/
durch /(?s).*allUDM.*/
.
- Sie können den Modifikator
nocase
nach Strings verwenden, um anzugeben, dass bei der Suche die Groß-/Kleinschreibung ignoriert werden soll.
Parameterdatentypen
STRING
, STRING
Typen von Parameterausdrücken
ANY
, ANY
Rückgabetyp
BOOL
Codebeispiele
Beispiel 1
// Equivalent to $e.principal.hostname = /google/
re.regex($e.principal.hostname, "google")
Sofern nicht anders angegeben, sind die Inhalte dieser Seite unter der Creative Commons Attribution 4.0 License und Codebeispiele unter der Apache 2.0 License lizenziert. Weitere Informationen finden Sie in den Websiterichtlinien von Google Developers. Java ist eine eingetragene Marke von Oracle und/oder seinen Partnern.
Zuletzt aktualisiert: 2025-07-29 (UTC).
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Schwer verständlich","hardToUnderstand","thumb-down"],["Informationen oder Beispielcode falsch","incorrectInformationOrSampleCode","thumb-down"],["Benötigte Informationen/Beispiele nicht gefunden","missingTheInformationSamplesINeed","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2025-07-29 (UTC)."],[[["\u003cp\u003eThe \u003ccode\u003ere.regex\u003c/code\u003e function in YARA-L 2.0 is used to check if a string contains a substring that matches a given regular expression, and is supported in Rules and Search.\u003c/p\u003e\n"],["\u003cp\u003eThere are two ways to define regular expression matching in YARA-L 2.0: using the \u003ccode\u003e$e.field = /regex/\u003c/code\u003e syntax or by using the \u003ccode\u003ere.regex($e.field, \u003c/code\u003eregex\u003ccode\u003e)\u003c/code\u003e function.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003ere.regex\u003c/code\u003e function automatically checks for substrings, so adding \u003ccode\u003e.*\u003c/code\u003e at the beginning or end of the regular expression is unnecessary.\u003c/p\u003e\n"],["\u003cp\u003eTo ensure exact string matching or to match prefixes or suffixes, use the \u003ccode\u003e^\u003c/code\u003e and \u003ccode\u003e$\u003c/code\u003e anchor characters within the regular expression, and add a \u003ccode\u003e(?s)\u003c/code\u003e modifier for full multi-line field matching.\u003c/p\u003e\n"],["\u003cp\u003eThe function supports case-insensitive searches using the \u003ccode\u003enocase\u003c/code\u003e modifier after the strings.\u003c/p\u003e\n"]]],[],null,["### re.regex\n\nSupported in: \n[Rules](/chronicle/docs/detection/default-rules) [Search](/chronicle/docs/investigation/udm-search)\n\nYou can define regular expression matching in YARA-L 2.0 using either of the following syntax:\n\n- Using YARA-L syntax --- Related to events.\n The following is a generic representation of this syntax:\n\n $e.field = /regex/\n\n- Using YARA-L syntax --- As a function taking in the following parameters:\n\n - Field the regular expression is applied to.\n - Regular expression specified as a string.\n\n The following is a generic representation of this syntax: \n\n re.regex($e.field, `regex`)\n\n#### Description\n\nThis function returns `true` if the string contains a substring that matches the regular expression provided. It is unnecessary to add `.*` to the beginning or at the end of the regular expression.\n\n##### Notes\n\n- To match the exact string or only a prefix or suffix, include the `^` (starting) and `$` (ending) anchor characters in the regular expression. For example, `/^full$/` matches `\"full\"` exactly, while `/full/` could match `\"fullest\"`, `\"lawfull\"`, and `\"joyfully\"`.\n- If the UDM field includes newline characters, the `regexp` only matches the first line of the UDM field. To enforce full UDM field matching, add a `(?s)` to the regular expression. For example, replace `/.*allUDM.*/` with `/(?s).*allUDM.*/`.\n- You can use the `nocase` modifier after strings to indicate that the search should ignore capitalization.\n\n#### Param data types\n\n`STRING`, `STRING`\n\n#### Param expression types\n\n`ANY`, `ANY`\n\n#### Return type\n\n`BOOL`\n\n#### Code samples\n\n##### Example 1\n\n // Equivalent to $e.principal.hostname = /google/\n re.regex($e.principal.hostname, \"google\")"]]