Ansicht
Dokumentation
ABAPREPLACE_PATTERN - REPLACE PATTERN
SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up PERFORM Short ReferenceDiese Dokumentation steht unter dem Copyright der SAP AG.
REPLACE, pattern
... ${$[SUBSTRING$] substring$}
$| ${PCRE pcre$}$|${REGEX regex_ref$} ... .
Wirkung
Definition eines Suchmusters für die Anweisungen REPLACE und REPLACE IN TABLE.
- Bei der Angabe substring wird exakt nach der in substring angegebenen Unterfolge gesucht. Vor substring kann zur Verdeutlichung optional der Zusatz SUBSTRING angegeben werden.
- Bei der Angabe PCRE oder REGEX wird nach der Unterfolge gesucht, die zu einem in pcre oder regex_ref angegebenen regulären Ausdruck passt.
- PCRE kennzeichnet einen regulären PCRE-Ausdruck in einer Zeichenkette pcre. Die PCRE-Syntax wird in einem erweiterten Modus kompiliert: Die meisten nicht maskierten Leerräume (Leerzeichen und Zeilenumbrüche) im Muster werden außerhalb von Zeichenklassen ignoriert und Kommentare können hinter # angegeben werden. Bevor Leerräume und # in einem Muster angegeben werden können, müssen sie maskiert werden oder der erweiterte Modus muss im regulären Ausdruck durch (?-x) ausgeschaltet werden.
- REGEX kennzeichnet einen beliebigen von ABAP unterstützten regulären Ausdruck, der durch eine von einer Referenzvariablen regex_ref referenzierte Instanz der Systemklasse CL_ABAP_REGEX dargestellt wird.
substring und pcre sind
zeichenartige Ausdruckspositionen. Syntax und Semantik entsprechen der Definition eines Suchmusters
für die Anweisung FIND. Die
Anweisung REPLACE ersetzt die gefundene
Unterfolge gemäß der Angabe hinter WITH.
Hinweise
- Instanzen von CL_ABAP_REGEX für alle Arten von regulären Ausdrücken, PCRE, POSIX, XPath und XSD können mit dem Zusatz REGEX verwendet werden. Hier wird die Einschränkung umgangen, wobei reguläre Ausdrücke im XPath- und XSD-Syntax nicht direkt als Zeichenketten angegeben werden können.
- Bei Verwendung von CL_ABAP_REGEX kann der erweiterte Modus über einen Parameter geschaltet werden.
- Ein regulärer Ausdruck kann zwar syntaktisch korrekt, aber zu komplex für die Ausführung der Anweisung REPLACE sein, was zu einer behandelbaren Ausnahme der Klasse CX_SY_REGEX_TOO_COMPLEX führt. Siehe Ausnahmen in regulären Ausdrücken.
- Hinter REGEX kann auch ein zeichenartiger Operand posix angegeben werden, die einen gültigen
regulären POSIX-Ausdruck enthält. Diese Variante ist obsolet.
Beispiel
Ersetzung der Unterfolge "all" mit "er".
Beispiel
Die folgende Ersetzung mit dem regulären Ausdruck \D entfernt sämtliche Nicht-Ziffern aus einer Zeichenkette.
RFUMSV00 - Advance Return for Tax on Sales/Purchases PERFORM Short Reference
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 4901 Date: 20240523 Time: 124000 sap01-206 ( 110 ms )