tuple_regexp_replace
— Ersetzen eines Teils einer Zeichenkette mit Hilfe von regulären Ausdrücken.
tuple_regexp_replace( : : Data, Expression, Replace : Result)
tuple_regexp_replace
wendet den regulären Ausdruck Expression
auf eine oder mehrere Zeichenketten in Data
an und ersetzt jeweils
die erste dem Suchmuster entsprechende Teilzeichenkette durch
Replace
.
Die bearbeiteten Zeichenketten werden in Result
zurückgegeben.
Für die Beschreibung von Syntax und Optionen des regulären Ausdrucks wird
auf die Dokumentation des Operators tuple_regexp_match
verwiesen.
Zusätzlich unterstützt der Operator tuple_regexp_replace
noch die
Option 'replace_all' , mit der bei mehrfachen Übereinstimmungen
auch mehrfache Ersetzungen durchgeführt werden.
Im Ausdruck Replace
kann man mit '$0'
auf die dem Suchmuster entsprechende Teilzeichenkette verweisen, mit
'$i' auf das Teilergebnis der i-ten Gruppe
(für i <= 9), sowie mit
'$$' auf das Literal
'$' .
Für allgemeine Informationen zu String-Operationen siehe auch Tupel / String-Operationen.
Wenn Data
ein leeres Tupel ist, gibt der Operator ein leeres Tupel
zurück. Wenn Replace
ein leeres Tupel ist und Data
nicht
leer ist, wird eine Fehlermeldung angezeigt.
Die Auswertung der regulären Ausdrücke berücksichtigt Unicode Codepoints.
Ein Codepoint kann aus mehreren Bytes im UTF-8 String zusammengesetzt sein.
Wenn die Auswertung der regulären Ausdrücke sich auf die Bytes des Strings
beziehen soll, kann dieser Operator mit
set_system('tsp_tuple_string_operator_mode', 'byte')
in einen
Byte-Modus umgeschaltet werden. Wenn 'filename_encoding' auf
'locale' gesetzt ist (legacy), verwendet dieser Operator immer den
Byte-Modus.
HDevelop unterstützt eine Inline-Operation für tuple_regexp_replace
,
die innerhalb eines Ausdrucks in der folgenden Syntax verwendet werden
kann:
Result := regexp_replace(Data, Expression, Replace)
Data
(input_control) string(-array) →
(string)
Zu bearbeitende Eingabezeichenketten
Expression
(input_control) string(-array) →
(string)
Regulärer Ausdruck.
Defaultwert: '.*'
Wertevorschläge: '.*' , 'replace_all' , 'ignore_case' , 'multiline' , 'dot_matches_all' , 'newline_lf' , 'newline_crlf' , 'newline_cr'
Replace
(input_control) string →
(string)
Ersetzungsausdruck.
Result
(output_control) string(-array) →
(string)
Bearbeitete Zeichenketten.
tuple_regexp_replace(['img10.bmp','img11.bmp','img12.bmp'], \ 'img(.*).bmp', 'out$1.txt', Result) * Returns ['out10.txt','out11.txt','out12.txt']
tuple_regexp_match
,
tuple_regexp_test
,
tuple_regexp_select
Foundation