我正在使用正则表达式来查找:
test:?
跟随任何字符直到它遇到下一个:
test:?
现在当我运行我写的这个正则表达式时:
((?:test:\?)(.*)(?!test:\?))
在这段文字中:
test:?foo2=bar2&baz2=foo2test:?foo=bar&baz=footest:?foo2=bar2&baz2=foo2
我期望得到:
test:?foo2=bar2&baz2=foo2
test:?foo=bar&baz=foo
test:?foo2=bar2&baz2=foo2
但实际上它匹配了所有内容。有经验的正则表达式用户能否告诉我哪里出错了?我以前用过正则表达式进行模式匹配,但这是我第一次使用lookaround/lookahead。
提前感谢任何帮助、提示和指导 :-)
test:?
上进行分割吗?如果是的话,你的环境将提供一种无需正则表达式即可完成的方法。 - Chris Morgan