正则表达式使用积极的后面看不工作在Alteryx



我试图匹配一个字符串后的第二个单词"积极地向后看。它适用于在线测试,如https://regexr.com/,但我的工具Alteryx不允许量词,如+在后面看。

"ABC这是一个例子,食腐动物ref.: 23244-2234LW782837673测试2324324">

(?<=Voressref.:sd+-d+s+)w+在regexr.com上正确匹配LW78283767,但在Alteryx中不匹配。

我如何通过使用量词重写前瞻表达式,但仍然得到我想要的?

您可以在这里使用

替代方法
.*?bVoress+ref.:s+d+-d+s+(w+).*

$1代替

参见regex演示。

细节:

  • .*?-除换行符外的任何0+字符,尽可能少
  • bVores-全字Vores
  • s+-一个或多个空白
  • ref.:-ref.:子字符串
  • s+-一个或多个空白
  • d+-d+-一个或多个数字,-和一个或多个数字
  • s+-一个或多个空白
  • (w+)-捕获组1:一个或多个字符。
  • .*-除换行符以外的任何0+字符,尽可能多。

您可以使用捕获组。

注意转义点.来匹配它。

bVoressref.:sd+-d+s+(w+)

模式匹配:

  • bVoressref.:sd+-d+s+你的模式变成了匹配
  • (w+)Capture组1,匹配1+单词字符

Regex演示

最新更新