【发布时间】:2017-06-02 05:51:55
【问题描述】:
我不是正则表达式方面的专家,在 oracle 中我想使用 regexp_replace oracle 函数在文本中查找字符串。
要查找的字符串以“{”开头,以“}”结尾。
在“{”和“}”之间,您会发现字母和“_”字符。
所以,如果我有这样的文字:
这是一个要替换的 {HI_FRIEND} 测试
如何删除字符串“{HI_FRIEND}”?
我试过了:
select REGEXP_REPLACE('this is a {HI_FRIEND} test to replace','*{(A-Z-)}*','') from dual
但它不起作用。
包含文本的字段在至少有 100 万条记录的表中。
【问题讨论】:
-
如果我有一个像
'something {123} something else'这样的字符串怎么办?我应该删除它还是不删除它? -
就我而言,我必须删除“{”和“}”之间的所有字符。你的第一个例子很完美,因为替换了完整的内容。
标签: oracle regexp-replace