【问题标题】:postgresql : regexp_substr - get sub string between occurrence of delimiterspostgresql:regexp_substr - 获取分隔符出现之间的子字符串
【发布时间】:2021-01-05 20:06:53
【问题描述】:

我有这些字符串:

[{"Name":"id","Value":"Window_Ex_kebklipecbcegiocpa_widget_open"
[{"Name":"id","Value":"Window_Ex_kebklipecbcegiocpa_widget_close"
[{"Name":"id","Value":"Window_Ex_kebklipecbcegiocpa_widget_mid_value"

我试图只提取第三个_ 之后的部分,直到字符串的结尾(总是以" 结尾)

widget_open
widget_close
widget_mid_value

我正在使用 postgresql,并且想使用 regexp_substr 语法来提取它。 谢谢!

【问题讨论】:

  • 向我们展示您尝试了什么以及为什么没有奏效。

标签: postgresql regexp-substr


【解决方案1】:

regexp_replace(data::text,'^([^_]+_){3}','')

你可以试试

select regexp_replace(data::text,'^([^_]+_){3}','')
  from (
      select 'one_two_three_four  s'::text as data 
      union select 'a_bb_ccc_dddd_eeee_ffff'
  ) data

【讨论】:

    猜你喜欢
    • 2021-09-01
    • 2016-03-18
    • 1970-01-01
    • 2021-04-04
    • 1970-01-01
    • 2014-08-08
    • 2012-04-27
    • 2015-08-01
    • 2021-12-04
    相关资源
    最近更新 更多