2

我有类似的数据

[A_B] A [1_@_312_AS] 232[232_A_@]AB_!@_12

我想要的是

A 232AB_!@_12

我想用正则表达式获取不在括号中的数据。我REGEX_SUBSTR在 Oracle DB 中使用函数

有人可以帮助我是这个领域的新手吗?

4

1 回答 1

3
SELECT 
    regexp_replace(t.mytext, '\[[^]]*\]', '')
FROM   
    (SELECT '[A_B] A [1_@_312_AS] 232[232_A_@]AB_!@_12' as mytext FROM DUAL) t

问候,

AKDA

编辑: regexp_replace在参数 1(文本)中搜索参数 2(模式)并用参数 3(空字符串'')替换所有实例

该模式匹配围绕任意数字 (*) 的任何字符的左括号和右括号 (\[ \]),除了右括号 ([^]])

希望能以某种方式解释它...... :)

于 2013-07-16T07:00:03.040 回答