1

如何提取此模式中的后续事件:

123|xx3|1x23|1x2x3|x123x|123x

因此,例如,我只想提取第 3 次出现,我尝试使用:

(?:.*?\\|){3}(.*)

但它从第 3 次出现以及之后的所有内容中提取。

4

1 回答 1

1

REGEXP_EXTRACT参考显示了一个使用捕获组来提取您需要的字符串部分的示例。

因此,匹配到第 3 部分,然后捕获第 3 个值:

^(?:[^|]*[|]){2}([^|]*)

这是一个演示,绿色突出显示的部分将被提取。

细节

  • ^- 字符串的开始
  • (?:[^|]*[|]){2}- 2 次出现:
    • [^|]*- 零个或多个字符|
    • [|]-|管道符号
  • ([^|]*)- 第 1 组:除 . 之外的零个或多个字符|
于 2017-08-30T20:26:36.463 回答