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’。第二个语句将字符串中的大写字母替换为空字符串。第三个语句将字符串中的数字替换为空字符串。最后一个语句使用分组捕获,并将匹配部分按指定顺序重新排列。