PostgreSQL替换所有出现的字符串+

时间:2018-08-02 17:41:42

标签: regex postgresql regexp-replace

我有这个字符串:

this is the abcd xxx
string I want to abcd yyy
replace in my text abcd zzz

现在我想用空白替换abcd及其后的所有内容。

我想要这个结果:

this is the
string I want to 
replace in my text 

我尝试过:

select regexp_replace(str, 'abcd.*','','gi')

但是它只是删除了第一场比赛后的所有比赛。还有没有运气的其他连击。

我想念什么?

谢谢!

1 个答案:

答案 0 :(得分:1)

n中使用标记regexp_replace()(对换行敏感的匹配):

with my_table(str) as (
values(
'this is the abcd xxx
string I want to abcd yyy
replace in my text abcd zzz')
)

select regexp_replace(str, 'abcd.*','','gin')
from my_table

   regexp_replace    
-----------------
 this is the        +
 string I want to   +
 replace in my text 
(1 row)