Oracle中的REGEXP_REPLACE函數用于替換字符串中與指定模式匹配的部分。它的語法如下:
REGEXP_REPLACE(source_string, pattern, replacement)
其中:
示例用法:
SELECT REGEXP_REPLACE('Hello World', 'o', 'u') FROM dual;
-- 輸出:Hellu Wurld
SELECT REGEXP_REPLACE('ABC123XYZ', '[A-Z]', '') FROM dual;
-- 輸出:123
SELECT REGEXP_REPLACE('Hello123World', '\d', '') FROM dual;
-- 輸出:HelloWorld
SELECT REGEXP_REPLACE('ABC-123-XYZ', '(\w+)-(\d+)-(\w+)', '\3-\2-\1') FROM dual;
-- 輸出:XYZ-123-ABC
上述示例中,第一個語句將字符串中的字母’o’替換為’u’。第二個語句將字符串中的大寫字母替換為空字符串。第三個語句將字符串中的數字替換為空字符串。最后一個語句使用分組捕獲,并將匹配部分按指定順序重新排列。