我有一列,其中包含-$ test test12 $ test14之类的值 我必须更新值$$之间。 像-$ test done $ test14
我尝试使用:-
解决此问题select REGEXP_REPLACE('$test test12$ test14','$(.*?)$','test done') from dual
但不起作用
给出字符串-$ test test12 $ test14 预期结果-已完成$ test $ test14
答案 0 :(得分:4)
字符$
是rexeg 元字符,具有特殊含义(表示输入或当前行的结尾)。您要定位文字$
,然后需要对其进行转义:
SELECT
REGEXP_REPLACE('$test test12$ test14', '\$(.*?)\$','$test done$')
FROM dual;
以上输出:
$test done$ test14