Ansicht
Dokumentation

CL_ABAP_MATCHER - Reguläre Ausdrücke

CL_ABAP_MATCHER - Reguläre Ausdrücke

General Material Data   Fill RESBD Structure from EBP Component Structure  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Funktionalität

Für die Bearbeitung regulärer Ausdrücke stehen die Klassen CL_ABAP_REGEX undCL_ABAP_MATCHER zur Verfügung. Bei Erzeugung eines Objektes vom Typ CL_ABAP_MATCHER wird das Objekt mit dem zu bearbeitenden Text verknüpft und damit eine Vergleichsinstanz zur Bearbeitung des Textes geschaffen.

Die Klasse CL_ABAP_MATCHER speichert den aktuellen Zustand derTextbearbeitung. Suchen und Ersetzen werden durch verschiedene Methoden angestoßen, deren Ergebnisse im internen Zustand des Objekts gespeichert werden. Zusätzlich wird der Erfolg einer Aktion in Form boolscher Werte zurückgeliefert. Der aktuelle Zustand der Bearbeitung kann über verschiedene get-Methoden abgefragt werden.

Für alle Regex-Operationen wie Suchen und Ersetzen stehen die folgenden Methoden zur Verfügung:

Der Zustand und das Ergebnis der Suche oder der Ersetzung kann mit den folgenden Methoden abgefragt werden:

Zusätzlich werden zur Vereinfachung der Programmierung Methoden bereit gestellt, die vor allem in logischen Ausdrücken verwendet werden können:

Ausnahmen

Im Fehlerfall wird eine Ausnahme der Fehlerklasse CX_SY_MATCHER ausgelöst, die über Textparameter unterschieden werden:

  • CX_SY_MATCHER_INVALID_ARGUMENTS
    Die Angaben zu dem zu durchsuchenden Text sind ungültig.
  • CX_SY_MATCHER_NO_CURRENT_MATCH
    Es wurde eine Textersetzung oder Ergebnisabfrage ohne gültige Übereinstimmung durchgeführt
  • CX_SY_MATCHER_INVALID_SUBMATCH
    Es wurde ein Zugriff auf eine nicht vorhandene Untergruppe durchgeführt.
  • CX_SY_MATCHER_INVALID_MATCH_OPERATION
    Es wurde versucht, die Match-Methode auf eine interne Tabelle anzuwenden.

Werden die Ausnahmen nicht abgefangen, tritt der Laufzeitfehler INVALID_REGEX auf.






BAL Application Log Documentation   SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 4739 Date: 20240328 Time: 101136     sap01-206 ( 53 ms )