【问题标题】:REGEX_REPLACE not working as expected in oracle 10gREGEX_REPLACE 在 oracle 10g 中没有按预期工作
【发布时间】:2012-06-28 14:41:22
【问题描述】:

我在 Oracle 10g 中使用REGEX_REPLACE 方法,但它没有替换字符串。

这是我正在(不成功)尝试的:

Select REGEX_REPLACE('Mathew, Sajan K ext (E IT S US 1)','\\([^\\)]+\\)','') "REGEXP_REPLACE"

【问题讨论】:

  • 你想替换什么?它看起来不像一个有效的正则表达式。
  • 我在 c# 代码中使用了这个正则表达式。我想将括号内的文本替换为空。它在 c# 中工作正常。我不知道它在 oracle 中是否有效

标签: sql regex oracle10g


【解决方案1】:

试试这个:

Select REGEX_REPLACE('Mathew, Sajan K ext (E IT S US 1)','\([^\)]+\)','') "REGEXP_REPLACE"

请注意,我刚刚删除了多余的转义字符 \,有些语言似乎要求您双重转义,有些则不需要。

参考:Oracle SQL Database Reference REGEX_REPLACE

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-31
    • 1970-01-01
    • 2014-01-26
    • 2021-10-19
    • 2020-03-18
    • 2012-06-14
    相关资源
    最近更新 更多