re.regex

Unterstützt in:

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. Nachfolgend finden Sie eine allgemeine Darstellung dieser Syntax:

    $e.field = /regex/
    
  • Verwendung der YARA-L-Syntax – als Funktion mit den folgenden Parametern:

    • Feld, auf das der reguläre Ausdruck angewendet wird.
    • Regulärer Ausdruck, der als String angegeben wird.

    Nachfolgend finden Sie 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.

Die Funktion re.regex verwendet die RE2-Engine für reguläre Ausdrücke.

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. Beispiel: /^full$/ entspricht genau "full", während /full/ mit "fullest", "lawfull" und "joyfully" übereinstimmen könnte.
  • Wenn das UDM-Feld Zeilenumbruchzeichen enthält, stimmt regexp nur mit der ersten Zeile des UDM-Felds überein. 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ß- und Kleinschreibung ignoriert werden soll.

Parameterdatentypen

STRING, STRING

Parameterausdruckstypen

ANY, ANY

Rückgabetyp

BOOL

Codebeispiele

Beispiel 1
// Equivalent to $e.principal.hostname = /google/
re.regex($e.principal.hostname, "google")