Reguläre Ausdrücke und Muster in Feldnormalisierungsregeln

  • Freigeben Version: Zurich
  • Aktualisiert 31. Juli 2025
  • 2 Minuten Lesedauer
  • Feldtransformationsdefinitionen unterstützen die Verwendung regulärer Ausdrücke (auf die in der Plattform als verwiesen wird Regulärer Ausdruck ) Und Musterabgleich zur Bestimmung der Position von Zeichen in einer Zeichenfolge.

    Nach der Identifizierung der Zielzeichen kann die Feldtransformation die identifizierten Zeichen ersetzen oder löschen oder andere Zeichen an dieser Position einfügen.

    Regulärer Ausdruck

    Reguläre Ausdrücke können in Transformationsparametern und in Bedingungsanweisungen verwendet werden, um zu bestimmen, welche Zeichen in einem Feldwert umgewandelt werden.

    Reguläre Ausdrücke, die als Parameter zum Suchen von Zeichen in transformierten Feldwerten verwendet werden, müssen mit beginnen /regex/. Alles danach ist ein regulärer Ausdruck, der zur Berechnung der Zeichenposition verwendet wird.

    Beispiel

    Die Computernamen in einer Organisation Windows Netzwerk wird als Domänen-/Computername ausgedrückt, z. B. Entwicklung\devlab01 . Der Netzwerkadministrator möchte diese Namen vereinfachen, indem er den Domänennamen und den umgekehrten Schrägstrich entfernt. Er erstellt einen Transformationsdatensatz für die Tabelle „Computer“ [cmdb_ci_Computer] und wählt aus Name Zu transformierendes Feld.
    Abbildung : 1. Beispiel für regulären Ausdruck der Transformation
    Das Netzwerk enthält mehrere Domänen, und jede Domäne enthält zahlreiche Computer. Das einzige Zeichen, das jedem Namen gemeinsam ist, ist der umgekehrte Schrägstrich. Zum Löschen des Domänennamens entscheidet sich der Administrator, einen regulären Ausdruck zu verwenden, um den gesamten Rohwert im Feld durch die Zeichen zu ersetzen, die nach dem umgekehrten Schrägstrich (der tatsächliche Computername) angezeigt werden. Er erstellt mit eine neue Transformation Ersetzen Als Transformationstyp und gibt die folgenden Werte ein:
    • Suchen: /Regulärer Ausdruck/.*\\(.*)
    • Ersetzen durch: $1
    Abbildung : 2. Beispiel für regulären Ausdruck der Transformation

    Der reguläre Ausdruck .*\\(.*) Stellt den gesamten Rohwert in dar Name Feld: In diesem Beispiel Entwicklung\devlab01 . Der erste Teil des Ausdrucks, .* , Stellt alles vor dem umgekehrten Schrägstrich dar (die Entwicklung Domänenname). Der umgekehrte Schrägstrich selbst ist das Escape-Zeichen in regulären Ausdrücken und erfordert eine spezielle Syntax, um seine Funktion im Computernamen beizubehalten. Der Administrator muss Escape-Zeichen Durch Verwendung eines anderen umgekehrten Schrägstrichs (\\ bedeutet \). Der Teil des Ausdrucks nach dem umgekehrten Schrägstrich (.*) , Stellt den Computernamen dar ( Devlab01 ) Und ist zur Referenz in Klammern gruppiert. Der Wert in Ersetzen Sie durch Feld, $1 , Verweist auf diese Gruppe und ersetzt den gesamten Rohwert des Felds durch den Inhalt der Gruppe, Devlab01 .

    Der Administrator klickt Testen Sie Transformationen In den Transformationsdatensatz und in eingeben Entwicklung\devlab01 In Rohdaten Feld. Er klickt dann auf OK Um die Transformation auf den Testwert anzuwenden. Die Transformation ersetzt Entwicklung\devlab01 Mit Devlab01 .
    Abbildung : 3. Regulärer Ausdruck Der Transformation 3

    Wenn die Transformationen für dieses Feld erfolgreich getestet wurden, ändert der Administrator den Modus Im Transformationsdatensatz zu Aktiv Und führt den Auftrag „Daten der Transformationsanwendung“ aus, um diese Transformation auf vorhandene Datensätze in der Datenbank anzuwenden.