【问题标题】:How to get specific character in complicated condition如何在复杂条件下获得特定字符
【发布时间】:2021-12-08 08:37:16
【问题描述】:

我喜欢以下专栏。我想收到login_name 之后的信件

test_id:taaotai,priority:Primary,login_name:[person1]

我想从上面的列中获取person1

如果有人有意见,请告诉我

【问题讨论】:

    标签: sql postgresql amazon-redshift


    【解决方案1】:

    您可以将substring 与正则表达式一起使用:

    select substring(login_name from 'login_name:\[(.*)\]')
    from your_table
    

    【讨论】:

      【解决方案2】:

      正则表达式搜索将完成这项工作。

      select (regexp_matches(
        'test_id:taaotai,priority:Primary,login_name:[person1] and whatever else', 
        '\mlogin_name:\s*\[(.+)\]')
      )[1];
      
      -- person1
      

      【讨论】:

        猜你喜欢
        • 2018-03-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-04-14
        • 2016-09-30
        • 2020-07-31
        • 2013-02-24
        • 2018-12-02
        相关资源
        最近更新 更多