oracle - 如何在 regexp_substr oracle 中转义 '[' 、 ']' 、 '|' 等字符

标签 oracle escaping character

我需要更换这样的东西:

some random characters[[some_randome_characters1|some_randome_characters2]]some random characters

为此:

[link=some_randome_characters]some_randome_characters[/link]

我设法编写了这样的程序:

l_tmp:=regexp_substr(content,'/[{2}(/s|/w|/d)+/|/[{2}(/s|/w|/d)+/]{2}');

...在这里我正在做其他事情来建立我的链接。 问题是 (/s|/w|/d)+ 没有找到所有匹配项 -> 对于包含“.”或“=”等的示例文本。总而言之,我想改变这个:

(/s|/w|/d)+

为此:

[^/|/[/]] 

但它不会工作。有什么办法可以转义这 3 个字符吗?

最佳答案

您正在使用斜杠 / 字符, 但您必须使用反斜杠 \ 来转义字符。

关于oracle - 如何在 regexp_substr oracle 中转义 '[' 、 ']' 、 '|' 等字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21120845/

相关文章:

java - 本地 JDBC 连接成功,部署时相同代码失败

linux - 安装 OP5 Monitor/Nagios :

c - OCIStmtPrepare 总是返回 OCI_INVALID_HANDLE

django - 如何从 View 中禁用 Django 的自动转义?

windows - 在批处理文件的参数中转义“、<、>、>> 或 | 等字符

string - Swift - 字符不是字符串的子类型

java - 如何在 Oracle Weblogic Server 上将一个根应用程序设置为与其他应用程序相邻?

c# - 如何将路径作为参数传递给 Process.Start

xml - Delphi,IXMLDOMDocument2,加载因无效字符而失败

java - 在 java : O(n) 中查找字符串中字符频率的有效方法