字符串括号及括号里的内容过滤

huanmie_09 2011-11-02 08:50:46
原串示例:(t1)ha(t2)hb
功能:过滤原串中的括号及括号内的字符
过滤后预期结果:hahb
...全文
254 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
youshang444 2011-11-02
  • 打赏
  • 举报
回复
SELECT regexp_replace('(t1ee)ha(t2)hb()()','\(([[:alnum:]])*\)') FROM dual;
IT职场成长课 2011-11-02
  • 打赏
  • 举报
回复
4、5楼正解
007-x 2011-11-02
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 xiaobn_cn 的回复:]
select regexp_replace('(t1)ha(t2)hb','[(][^()]+[)]') from dual;
[/Quote]
改成*能去掉单纯的"()"
select regexp_replace('(t1)ha(t2)hb()()','[(][^()]*[)]') from dual;
xiaobn_cn 2011-11-02
  • 打赏
  • 举报
回复

select regexp_replace('(t1)ha(t2)hb','[(][^()]+[)]') from dual;
huanmie_09 2011-11-02
  • 打赏
  • 举报
回复

SQL> SELECT REGEXP_REPLACE('(t1)ha(t2)hb', '(\((.)*\))*(((.)*))*( )*/?', '') col
2 FROM dual;

COL
---
hb

我之前这样处理,达不到想要的效果.
huanmie_09 2011-11-02
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 youshang444 的回复:]
SQL code

SELECT regexp_replace('(t1)ha(t2)hb','\(..\)') FROM dual;
[/Quote]
不限于括号内只有两个字符哈。
youshang444 2011-11-02
  • 打赏
  • 举报
回复
SELECT regexp_replace('(t1)ha(t2)hb','\(..\)') FROM dual;

17,090

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧