妙用Oracle中的Replace函数替换字符串(oracle替换字符串)

Oracle中的Replace函数用于替换字符串中的指定字符串。它有两个参数:source(输入字符串)和target(用于替换源字符串)。及它可以实现从一个字符串中替换另一个字符串。可以用如下SQL语句来看一下replace函数的用法:

SELECT REPLACE (‘This is good. ‘, ‘good’, ‘amazing’) AS REPLACE_RESULT FROM DUAL;

它会把 ‘This is good. ‘ 中的“good”替换成“amazing”,输出结果为:

REPLACE_RESULT

—————-

This is amazing.

另外,replace函数还可以实现多个字符串的同时替换,假设有个表格 employee:

id | name

———-

1 | Janice

2 | Tom

3 | Jerry

我们想让name中的Janice改为Linda,Tom 改为John,Jerry改为Michelle。可以用如下SQL语句:

UPDATE employee

SET name = REPLACE (REPLACE (REPLACE (name, ‘Janice’, ‘Linda’), ‘Tom’, ‘John’), ‘Jerry’, ‘Michelle’)

WHERE id IN (1, 2, 3);

此语句将在name的字段中把Janice替换为Linda,Tom替换为John,Jerry替换为Michelle。执行persist操作之后,employee表即会变成:

id | name

———-

1 | Linda

2 | John

3 | Michelle

另外replace函数还支持正则表达式,其用法如下:

SELECT REPLACE (‘This is good.’, ‘\w+’, ‘amazing’) AS REPLACE_RESULT

FROM DUAL;

它会把 ‘This is good. ‘ 中的所有单词(由 \w+ 匹配)替换成“amazing”,输出结果为:

REPLACE_RESULT

—————-

amazing amazing amazing.

以上是Oracle中用Replace函数替换字符串的用法介绍,在使用过程中,建议大家多读读文档,用好例子练习,把效果更好的发挥出来。


数据运维技术 » 妙用Oracle中的Replace函数替换字符串(oracle替换字符串)