Überlegungen zur Leistung bei der Verwendung von regulären Ausdrucken

Gehen Sie sorgfältig vor, wenn Sie reguläre Ausdrücke verwenden: für einige Formen regulärer Ausdrücke ist es sehr aufwendig, die beste Zuordnung zu finden, was sich nachteilig auf die Leistung auswirkt. Andere Ausdrücke führen unter Umständen zu einem unerwarteten Ergebnis.

Um beispielsweise Text bis einschließlich des Begrenzungszeichens ';' abzugleichen, dürfen Sie nicht das Muster '.*;' verwenden, da dies einen Abgleich bis zum letzten ';'-Zeichen in der Nachricht zur Folge hat, einschließlich vorheriger ';'-Zeichen im abgeglichenen Text. Stattdessen sollten Sie das Muster '[^;]*;' verwenden.

Vermeiden Sie auch die Verwendung des Musters '.*', da dies immer eine Suche nach der besten Übereinstimmung bis zum Ende der Nachricht erzwingt und die Leistung daher abnimmt. Sie sollten jedoch das Muster '.*' verwenden, wenn Sie alle verbleibenden Daten in einer Nachricht abgleichen möchten.

Vermeiden Sie Ausdrücke mit redundanten verschachtelten Wiederholungen, wie beispielsweise '([0-9]+)*', um die höchstmögliche Leistung zu erreichen. Halten Sie die Ausdrücke einfach und verwenden Sie präzise Übereinstimmungskriterien. Dadurch ist es nicht erforderlich, mehrere Suchläufe für die beste Übereinstimmung durchzuführen.

Zugehörige Konzepte
Nachrichten modellieren
Das Nachrichtenmodell
TDS-Format: Beziehung zum logischen Modell
Zugehörige Tasks
Nachrichtenmodelle entwickeln
Mit Nachrichtendefinitionsdateien arbeiten
Mit Nachrichtenmodellobjekten arbeiten
Zugehörige Verweise
Nachrichtenmodellverweisinformationen
Eigenschaften von Nachrichtenmodellobjekten
Zusätzliche Informationen zur MRM-Domäne
Zusätzliche TDS-Informationen
Bemerkungen | Marken | Downloads | Bibliothek | Unterstützung | Rückmeldung
Copyright IBM Corporation 1999, 2006 Letzte Aktualisierung: 23. Aug. 2006
ad09910_