项目中用到正则,现在Greedy匹配与Reluctant匹配算有些搞清楚了,但group的用法还是有些疑问,比如:
(Express A)|(Express B), Express A 是Greedy的而 Express B是Reluctant的,那匹配按照什么样的规律来?
我写程序测试发现,Express A 与 Express B的前后顺序不同,结果会有所不同,为什么?
(Express A)|(Express B), Express A 是Greedy的而 Express B是Reluctant的,那匹配按照什么样的规律来?
我写程序测试发现,Express A 与 Express B的前后顺序不同,结果会有所不同,为什么?
匹配“<1><!--<a><b>--><2>”结果是不一样的。
若是在某一段里Express A没有匹配而Express B有匹配,也会按Express B匹配。匹配完这段后又现匹配Express A,如此循环。
eg:(ab)|(a.*d) ababaadab
先匹配ab ab ,然后匹配aad,然后匹配ab