我有一个像这样的表达式:
Select regexp_replace('Seattle, WA Se', 'Se', 'SE')
我想替换' Se'用' SE'但是不想触及“西雅图”这个词。到目前为止,两个'西雅图'和' Se'变成'SEattle'和' SE'。
如何在 RegExp_Replace 表达式中添加条件以查找和更改"独立" '硒'?
感谢。
答案 0 :(得分:2)
如何在RegExp_Replace表达式中添加条件以查找和更改“独立”“Se”?
搜索前面的空格字符(或字符串开头),然后搜索Se
,然后搜索后面的空格字符(或字符串结尾),并使用返回引用来维护前面和后面的内容替换字符串中的空格字符:
SELECT REGEXP_REPLACE(
'Seattle, WA Se',
'(^|\s)Se(\s|$)',
'\1SE\2'
)
FROM DUAL;
答案 1 :(得分:0)
将正则表达式更改为
'Se$'
$
绑定到字符串结尾,因此'Se$'
表示'Se'
必须出现在字符串的末尾,后面没有字符。这将使跟踪Se
匹配,但Se
中的Seattle
将不会匹配。
祝你好运。