测试文本: pre-xxx
表达式 (?<=pre-)\w* 的匹配结果是xxx ,这个是正常的。
表达式 \w*(?<=pre-) 的匹配结果存在(注意并没有匹配失败),匹配到了一个空的字符串 , 也就是说我把一个后向断言放在表达式的右边,该怎么解释这种结果呢?这个空的字符串是怎么匹配到的?
如果是正向断言,应该是这样的:第一步,判断判断断言是否为真(即是否满足一定条件)第二步,如果满足条件,则进行下一步查找匹配。 如果是反向断言,第一步还是按照正则表达式顺序去匹配。第二步,遇到反向代言,判断是否满足反之代言。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。