REGEXP_REPLACE durchsucht eine Zeichenfolge auf ein regelmäßiges Muster und ersetzt dieses durch eine andere Zeichenfolge. Standardmäßig gibt die Funktion source_char zurück, wobei jedes Vorkommen des regelmäßigen Ausdrucksmusters durch replace_string ersetzt wird.
VARCHAR2 | CLOB
REGEXP_REPLACE(source_char, pattern
[, replace_string
[, position
[, occurrence
[, match_parameter ]
]
]
]
)
source_char ist der Textausdruck, der durchsucht wird.
pattern ist der Textausdruck, nach dem gesucht werden soll. Dies ist im Allgemeinen ein Textliteral. Es kann bis zu 512 Byte umfassen.
replace_string ist der Text, der pattern in source_char ersetzt.
position ist eine von Null abweichende Ganzzahl, die das Zeichen der Zeichenfolge angibt, bei dem die Funktion mit der Suche beginnt. Wenn "position" negativ ist, zählt und sucht INSTR ab dem Ende der Zeichenfolge rückwärts. Der Standardwert von "position" ist 1, d.h. die Funktion beginnt die Suche mit dem ersten Zeichen der Zeichenfolge.
occurrence ist eine Ganzzahl mit der angegeben wird, welches Vorkommen der Zeichenfolge die Funktion suchen soll. Der Wert des Vorkommens muss positiv sein. Der Standardwert für das Vorkommen ist 1, d.h. die Funktion sucht nach dem ersten Vorkommen der Teilzeichenfolge.
return_option ist entweder 0, um die Position der Übereinstimmung zurückzugeben (Standard), oder 1, um die Position des Zeichens nach der Übereinstimmung zurückzugeben.
match_parameter ist ein Textliteral, mit dem Sie das Standardübereinstimmungsverhalten der Funktion ändern können. Sie können einen oder mehrere der folgenden Werte angeben:
c: Groß-/Kleinschreibung beachten.
iGroß-/Kleinschreibung muss nicht beachtet werden.
m: Behandelt die Quellzeichenfolge als aus mehreren Zeilen bestehend. REGEXP_INSTR interpretiert ^ und $ als Anfang bzw. Ende einer Zeile an beliebiger Stelle in der Quellzeichenfolge und nicht nur am Anfang oder Ende der ganzen Quellzeichenfolge. Standardmäßig behandeltREGEXP_INSTR die Quellzeichenfolge als eine einzelne Zeile.
n: Das Zeilenvorschubzeichen gehört zu den Zeichen, das mit einem Punkt (Platzhalterzeichen) übereinstimmt. Standardmäßig ist dies nicht der Fall.
x: Leerstellen ignorieren
REGEXP_REPLACE('500 Oracle Parkway, Redwood Shores, CA', '( ){2,}', ' ') eliminiert zusätzliche Leerzeichen und gibt die Zeichenfolge 500 Oracle Parkway, Redwood Shores, CA zurück.
Copyright © 2003, 2007, Oracle. All rights reserved. Alle Rechte vorbehalten,