Reguläre Ausdrücke in Nachrichtenflussregeln in Exchange Online

Sie können reguläre Ausdrücke (RegEx) in Bedingungen und Ausnahmen in Nachrichtenflussregeln (auch als Transportregeln bezeichnet) verwenden, um Textmuster in verschiedenen Teilen einer Nachricht abzugleichen (z. B. Nachrichtenkopfzeilen, Absender, Empfänger, Betreff und Nachrichtentext). Bedingungen und Ausnahmen bestimmen, ob die Aktion in der Regel auf eine E-Mail-Nachricht angewendet werden soll.

Hinweis

Aufgrund der Abweichungen in Kundenumgebungen kann Microsoft Customer Support Services (CSS) nicht an der Entwicklung oder dem Testen von benutzerdefinierten Skripts für reguläre Ausdrücke ("RegEx-Skripts") teilnehmen. Für die Entwicklung, Das Testen und Debuggen von benutzerdefinierten RegEX-Skripts müssen Sich Microsoft 365-Kunden auf interne IT-Ressourcen verlassen. Alternativ können Microsoft 365-Kunden eine externe Beratungsressource wie Microsoft Consulting Services (MCS) verwenden. Unabhängig von der Skriptentwicklungsressource stehen CSS-Supporttechniker nicht zur Verfügung, um Kunden bei benutzerdefinierten RegEx-Skriptanfragen zu unterstützen.

Suchen Sie nach Verwaltungsaufgaben im Zusammenhang mit Nachrichtenflussregeln? Weitere Informationen finden Sie unter Nachrichtenflussregeln (Transportregeln) in Exchange Online.

Einfache Ausdrücke im Vergleich zu regulären Ausdrücken

Ein einfacher Ausdruck stellt einen bestimmten Wert dar, für den in einer Nachricht eine genaue Entsprechung gefunden werden soll. Bedingungen und Ausnahmen, die einfache Ausdrücke verwenden, entsprechen bestimmten Wörtern oder Textzeichenfolgen. Beispielsweise eine Nachrichtenflussregelbedingung, die nach Dokumenten mit dem Namen Yearly Sales sucht, Forecast.docx.

Ein regulärer Ausdruck ist eine genaue und flexible Notation zum Suchen nach Mustern oder Text in einer Nachricht. Die Notation besteht aus zwei grundlegenden Zeichentypen:

  • Literalzeichen: Text, der in der Zielzeichenfolge vorhanden sein muss. Bei diesen Zeichen handelt es sich um normale Zeichen, wie eingegeben.
  • Metazeichen: Ein oder mehrere Sonderzeichen, die angeben, wie der Text in der Zielzeichenfolge variieren kann.

Sie können reguläre Ausdrücke verwenden, um E-Mail-Nachrichten schnell zu analysieren, um bestimmte Textmuster zu finden. Mit regulären Ausdrücken können Sie Nachrichten mit bestimmten Inhaltstypen erkennen, z. B. Sozialversicherungsnummern (SSNs), Patentnummern und Telefonnummern.

Sie können Variablendaten nicht vernünftigerweise mit einem einfachen Ausdruck abgleichen, da für einen einfachen Ausdruck jede mögliche Variation des Werts erkannt werden muss. Das Abgleichen einer großen Anzahl einfacher Ausdrücke im Nachrichteninhalt kann ressourcenintensiv sein. Die Verwendung regulärer Ausdrücke ist effizienter. Anstatt alle möglichen Variationen anzugeben, können Sie die Regelbedingung für den Nachrichtenfluss so konfigurieren, dass nach einem Textmuster gesucht wird.

Reguläre Ausdrücke in Exchange Online

In Exchange Online PowerShell verwenden Parameternamen, die auf MatchesPatterns enden, reguläre Ausdrücke. Im Exchange Admin Center (EAC) werden Bedingungen und Ausnahmenamen, die mit ... entspricht jedem dieser Textmuster , die reguläre Ausdrücke verwenden. Weitere Informationen zu Bedingungen und Ausnahmen für Nachrichtenflussregeln in Exchange Online finden Sie unter Bedingungen und Ausnahmen für Nachrichtenflussregeln (Prädikate) in Exchange Online.

Warnung

Testen Sie reguläre Ausdrücke sorgfältig. Ein falsch konfigurierter regulärer Ausdruck kann zu unerwarteten Übereinstimmungen führen und unerwünschtes Verhalten der Nachrichtenflussregel verursachen, einschließlich:

  • Unerwünschte Aktionen für Nachrichten und Nachrichteninhalte.
  • Potenzieller Datenverlust.

Komplexe reguläre Ausdrücke können sich auch auf die Leistung des Nachrichtenflusses auswirken. Testen Sie Ihre regulären Ausdrücke in einer Testumgebung, bevor Sie sie in der Produktionsumgebung implementieren.

In der folgenden Tabelle sind die Musterzeichenfolgen aufgeführt, die Sie zum Erstellen eines musterabgleichenden regulären Ausdrucks in Exchange Online verwenden können:

Musterzeichenfolge Beschreibung
\S Die Musterzeichenfolge \S entspricht einem beliebigen einzelnen Zeichen, das kein Leerzeichen ist.
\s Die Musterzeichenfolge \s entspricht einem beliebigen einzelnen Leerzeichen.
\D Die Musterzeichenfolge \D entspricht einem beliebigen nicht-numerischen Zeichen.
\d Die Musterzeichenfolge \d entspricht einem beliebigen einzelnen numerischen Zeichen.
\w Die Musterzeichenfolge \w entspricht jedem einzelnen Unicode-Zeichen, das als Buchstabe oder Dezimalzahl kategorisiert ist.
\W Die Musterzeichenfolge \W entspricht einem beliebigen einzelnen Unicode-Zeichen, das nicht der Kategorie "Buchstabe" oder "Dezimalzahl" zugeordnet ist.
* Das Sternchen ( * ) entspricht null oder mehr Instanzen des vorherigen Zeichens. Entspricht beispielsweise ab*c den folgenden Zeichenfolgen: ac, abcund abbbbc.
| Das Pipezeichen ( | ) fungiert als OR-Operator. Beispielsweise entspricht "contoso|fabrikam" allen Instanzen von contoso oder fabrikam.
( ) Runde Klammern fungieren als Gruppentrennzeichen. Entspricht beispielsweise \a(bc)*\ den folgenden Zeichenfolgen: a, abc, abcbc, abcbcbc, usw.
\ Ein umgekehrter Schrägstrich wird als Escapezeichen vor einem Sonderzeichen verwendet. Sonderzeichen sind Zeichen, die in Musterzeichenfolgen verwendet werden:
  • Backslash \
  • Pipe |
  • Sternchen *
  • Öffnende Klammer (
  • Schließende Klammer )
  • Einfügemarke ^
  • Dollarzeichen $

Wenn Sie z. B. eine Zeichenfolge abgleichen möchten, die enthält (525), verwenden Sie \(525\).

^ Das Caretzeichen ( ^ ) gibt an, dass die Musterzeichenfolge, die auf das Caretzeichen folgt, am Anfang der übereinstimmenden Textzeichenfolge vorhanden sein muss. Entspricht z. B ^fred@contoso . fred@contoso.com und fred@contoso.co.uk , aber nicht alfred@contoso.com.
$ Das Dollarzeichen ( $ ) gibt an, dass die vorangehende Musterzeichenfolge am Ende der übereinstimmenden Textzeichenfolge vorhanden sein muss. Entspricht z. Bcontoso.com$. und , kim@research.contoso.com stimmt aber nicht übereinkim@contoso.com.auadam@contoso.com.

Erstellen regulärer Ausdrücke

Mithilfe der obigen Tabelle können Sie einen regulären Ausdruck erstellen, der dem Muster der Daten entspricht, die Sie abgleichen möchten:

  • Arbeiten Sie von links nach rechts, und untersuchen Sie jedes Zeichen oder jede Zeichengruppe in den Daten, die Sie zuordnen möchten.
  • Lesen Sie die Beschreibung der einzelnen Musterzeichenfolgen, und ermitteln Sie, wie diese auf die Daten angewendet werden, die Sie durchsuchen möchten.
  • Bestimmen Sie, welche Musterzeichenfolge in der Tabelle das Zeichen oder die Gruppe von Zeichen darstellt, und fügen Sie diese Musterzeichenfolge dem regulären Ausdruck hinzu.

Hinweis

Bei regulären Ausdrücken, die in Transportregeln verwendet werden, wird die Groß-/Kleinschreibung NICHT beachtet.

Das folgende Beispiel entspricht nordamerikanischen Telefonnummern im Format 425 555-0100 und 425.555.0100:

425(\s|.)\d\d\d(-|.)\d\d\d\d

Sie können dieses Beispiel erweitern, indem Sie das Rufnummerformat (425) 555-0100 hinzufügen, das die Ortskennzahl in Klammern einschließt.

Das folgende Beispiel entspricht allen drei Telefonnummernformaten.

\d\d\d((\s|.|-|\)|\)\s)\d\d\d(\s|.|-)\d\d\d\d

Sie können die vorherigen Beispiele wie folgt analysieren:

  • \d\d\d: Erfordert, dass genau drei numerische Ziffern zuerst angezeigt werden.
  • ((\s|.|-|\)|\)\s): Erfordert, dass nach der dreistelligen Zahl ein Leerzeichen, ein Punkt oder ein Bindestrich vorhanden ist. Jede der Zeichen zuordnenden Zeichenfolgen ist in den Gruppentrennzeichen enthalten und wird durch einen senkrechten Strich getrennt. Diese Trennung bedeutet, dass nur eines der angegebenen Zeichen innerhalb der Gruppierungstrennzeichen an dieser Position in der abzugleichenden Zeichenfolge vorhanden sein kann. Für die Trennung zwischen der Ortsvorwahl und den nächsten drei Ziffern wird auch nach einer geschlossenen Klammer oder einer geschlossenen Klammer und einem Leerzeichen gesucht.
  • \d\d\d: Erfordert, dass als Nächstes genau drei numerische Ziffern angezeigt werden.
  • (\s|.|-): Erfordert, dass nach der dreistelligen Zahl ein Leerzeichen, ein Punkt oder ein Bindestrich vorhanden ist.
  • \d\d\d\d: Erfordert, dass als Nächstes genau vier numerische Ziffern angezeigt werden.

Das vorherige Beispiel entspricht den folgenden Werten:

  • (425)555.0100
  • 425 555 0100
  • 425 555 0100
  • (425) 555-0100
  • 425-555-0100
  • (425) 555-0100

Erstellen eines Nachrichtenflusses, der einen regulären Ausdruck verwendet

Im folgenden Beispiel wird eine Nachrichtenflussregel in Exchange Online PowerShell erstellt, die reguläre Ausdrücke verwendet, um SSNs im Betreff einer E-Mail-Nachricht abzugleichen:

New-TransportRule -Name "Social Security Number Block Rule" -SubjectOrBodyMatchesPatterns '\d\d\d-\d\d-\d\d\d\d' -RejectMessageEnhancedStatusCode "5.7.1" -RejectMessageReasonText "This message has been rejected because of content restrictions"

Detaillierte Informationen zur Syntax und den Parametern finden Sie unter New-TransportRule.

Das folgende Beispiel zeigt die neue Nachrichtenflussregel:

Get-TransportRule "Social Security Number Block Rule" | Format-List

Ausführliche Informationen zu Syntax und Parametern finden Sie unter Get-TransportRule.