如果向前和向前斜杠,正则表达式子字符串" \ /"

时间:2015-05-05 08:21:32

标签: regex oracle substr

用于在向后和向前斜杠上分离的正确RegEx语法是什么?

对于Oracle,我尝试过:

的字符串

word1\/word2\/word3

regexp_substr(string, '[^"\\/"]+', 1, 1) first

但它无法正常工作

2 个答案:

答案 0 :(得分:0)

您正在使用角色类[^"\\/"];选择不在 {", /, \}中的所有字符。这可能不是你想要的。

相反,请尝试

`.*?(\\/|$)`

这将匹配\/或字符串的结尾,以先到者为准。请注意,匹配中\/包含,因为Oracle的regexp_substr似乎不支持先行断言

答案 1 :(得分:0)

如果您想获得所有字词,只需将\/替换为space

select REPLACE ('word1\/word2\/word3','\/',' ') "changes" FROM dual 

或者如果你只想要第一个词:

select REGEXP_SUBSTR('word1\/word2\/word3', '[^\\^/]+') "changes" FROM dual