使用REGEXP_REPLACE进行字符串匹配模式
我有一个字符串:使用REGEXP_REPLACE进行字符串匹配模式,regex,oracle,oracle11g,Regex,Oracle,Oracle11g,我有一个字符串:ABC1111~@SERIAL|u NUM_ONE@~@SERIAL|u NUM_TWO@~~~SERIAL|u NUM_THREE@ 现在我想用~-替换,~@anything@,这样我的字符串看起来像:ABC1111 | ~~~~- 在Oracle中如何执行此操作?我认为我们应该使用REGEXP\u REPLACE来完成这项工作!但我没办法弄明白。请帮帮我 regexp_replace('ABC1111|~@SERIAL_NUM_ONE@~|~@SERIAL_NUM_TWO@~
ABC1111~@SERIAL|u NUM_ONE@~@SERIAL|u NUM_TWO@~~~SERIAL|u NUM_THREE@
现在我想用~-
替换,~@anything@
,这样我的字符串看起来像:ABC1111 | ~~~~-
在Oracle中如何执行此操作?我认为我们应该使用REGEXP\u REPLACE来完成这项工作!但我没办法弄明白。请帮帮我
regexp_replace('ABC1111|~@SERIAL_NUM_ONE@~|~@SERIAL_NUM_TWO@~|~@SERIAL_NUM_THREE@~',
'~@.+?@~',
'~@')
是非贪婪表达式并返回,+?
ABC1111 | ~@| ~@| ~@
是贪婪的表达式,尝试尽可能多地进行运算并返回+
ABC1111 | ~@