Oracle SQL正则表达式删除字段末尾的方括号中的文本

时间:2016-08-22 19:40:28

标签: sql regex oracle

我在Oracle数据库中有一个字段,它以某种方式格式化:

Some text with <sup>superscripts</sup> [stock #random-number] [dynamic text]

我需要移除文字[stock #random-number][dynamic text],以便我留下Some text with <sup>superscripts</sup>,然后修剪结果,以便没有前导和尾随空格。

我需要在查询中执行此操作,而不是在PHP端,因为我需要使用DISTINCT

一切都是动态的,所以我想要的并不一定以<sup>结束。

1 个答案:

答案 0 :(得分:1)

您可以使用trim,substr,instr

 SELECT  trim(substr(your_string, 1, INSTR( your_string,'['))) 
 FROM your_table