使用正则表达式从 PLSQL 中的字符串列中提取两个字母字符

问题描述 投票:0回答:1

TIA 寻求您的帮助。

我正在寻找从 VARCHAR 列中提取两组双字母字符的指导。

该列被隔离为具有以下文本: “从XX到YY的类别”,其中“XX”是两个字符代码,“YY”是不同的两个字符代码。

但是,在某些情况下,文本看起来像: “类别从到 YY”,其中没有前两个字符代码。

您能帮我隔离列中同时存在这两个双字符代码的实例吗?

我尝试了以下方法但没有成功: 选择 * 从表 其中 regexp_like(column_name, '.{2}\sto\s{2}')

regexp_like(列名, '.{2}\sto')

和 regexp_like(column_name,'.{2}to')

sql regex regexp-like
1个回答
0
投票

尝试:

^category\s+from\s+[a-zA-Z]{2}\s+to\s+[a-zA-Z]{2}$

参见:regex101


说明

  • ^
    :字符串开头,后跟 ...
  • category\s+from\s+
    :字面上的“类别来自”。 (您可以使用
     
    [空格] 而不是
    \s+
  • [a-zA-Z]{2}
    :然后是两个字母字符...(如果您只有大写字母,请考虑
    [A-Z]
  • \s+to\s+
    :字面上的“到”...
  • [a-zA-Z]{2}
    :还有两个字母字符...
  • $
    :直到行尾。
© www.soinside.com 2019 - 2024. All rights reserved.