我试图匹配一个字符串后的第二个单词"积极地向后看。它适用于在线测试,如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演示