代码之家  ›  专栏  ›  技术社区  ›  BFF

如何使用regexp_substr修剪和忽略短划线

  •  2
  • BFF  · 技术社区  · 8 年前

    我所有的字段都有一个“-”字符。我只想显示“-”字符前的那些…此外,我还希望将显示的长度限制为10个字符。如何使用regexp或其他方法进行此操作?

    select regexp_substr(field,'[^-]*') from dual
    
    1 回复  |  直到 8 年前
        1
  •  2
  •   Gordon Linoff    8 年前

    我会这样做:

    select substr(regexp_substr(field, '^[^-]*'), 10) from dual
    

    首字母 ^ 不是真正需要的,但它使模式更强烈地说“获取字段中非破折号的第一个序列”。