问题描述
- 使用sql语句,去掉字符串里面的多个括号中的字符串
-
比如说,源串是 adgdg[ewrerw]fdafda[2323][244]fdfd,
希望执行语句后得到的是
adgdgfdafdafdfd,即去包含[]以及内部的字符串,这个SQL该怎么写呢?
解决方案
SELECT REGEXP_REPLACE('adgdg[ewrerw]fdafda[2323][244]fdfd','([(.*?)])', '' ) FROM DUAL; 发现这样写可以实现这个目的。
解决方案二:
执行sql语句前用其他语言的正则替换掉ubb标签就好了。。sql不太适合做这个事
解决方案三:
如果是PLSQL函数呢?我能想到的是自定义一个PLSQL函数,但感觉这样的效率会比较低。
解决方案四:
SELECT REGEXP_REPLACE('adgdg[ewrerw]fdafda[2323][][244]fdfd','[[.*?]]','',1,0,'i') FROM DUAL;为什么这样写得不到想要的效果呢,
求达人解决。
解决方案五:
SELECT REGEXP_REPLACE('adgdg[ewrerw]fdafda[2323][][244]fdfd','[(.+?)]','',1,0,'i') FROM DUAL;
解决方案六:
SELECT REGEXP_REPLACE('adgdg[ewrerw]fdafda[2323][244]fdfd','([(.*?)])', '' ) FROM DUAL;
这个才对的。
解决方案七:
为什么中间的符号显示不出来呢?
SELECT REGEXP_REPLACE('adgdg[ewrerw]fdafda[2323][244]fdfd','([(.*?)])', '' ) FROM DUAL;
解决方案八:
好像都不对啊。。。。我试了上述几个答案都不对啊
解决方案九:
Java SE7新特性之switch语句中使用字符串
时间: 2025-01-27 01:05:01