正则表达式提取画面

时间:2016-11-07 22:41:28

标签: regex tableau

我正在尝试在tableau中创建一个正则表达式提取函数。 当我使用正则表达式匹配函数时,一切正常,但提取的相同公式不起作用。思考?

REGEXP_MATCH([Comments Keyed In By User],
             '.*(|SC)( |)([0-9][0-9][0-9])( - | | -|-|)([0-9][0-9]|).*')

vs

REGEXP_EXTRACT([Comments Keyed In By User],
               '.*(|SC)( |)([0-9][0-9][0-9])( - | | -|-|)([0-9][0-9]|).*')

谢谢

1 个答案:

答案 0 :(得分:2)

当你提取匹配时,你不需要模式周围的.*,而且似乎Tableau要求在模式中定义捕获组以实际将文本输入到结果。

使用

REGEXP_EXTRACT([Comments Keyed In By User], '(SC[- ]*[0-9]{3})')

<强>详情:

  • SC - 匹配SC substring
  • [- ]* - 零个或多个-或空格(将*替换为?以匹配一个或零个匹配项)
  • [0-9]{3} - 3位数

要仅匹配整个单词,请使用单词边界\b包围该模式:'\b(SC[- ]*[0-9]{3})\b'