您的位置:首页 > 其它

预搜索(零宽断言)正则表达式

2014-02-19 23:37 399 查看


基本上一些教材介绍预搜索都是真么介绍的,理解起来着实费力,网上介绍的也都不全面,下面通过几个例子,看完后你自然会理解

1.a(?=b)正向搜索,找出出现a并且出现a位置后面是b的符合a字符 例如 affgfgabdff会找标红的a

2.a(?<=b)反向搜索,找出出现a并且出现a位置前面是符合a的字符 例如 affgfgabdff是找不到任何元素的,因为会从a位   置往前找,a自己本省就是往前的第一个元素,所以找不到。

  a(?<=a)这样写会找出所有的a,例如affgfgabdff会找出标红的a。

3.a(?!b)正向搜索,找出出现a并且a后面不是b的符合a字符 例如affgfgabdff会找出标红的a。

4.a(?<!b)反向搜索,找出出现a并且出现a位置前面不是b的符合a字符 例如 affgfgabdff会找出标红的a,

  a(?<!a)例如affgfgabdff不会找到任何符合的,因为从出现a的位置找,并且包括a,所以往前找第一个是     a,不符合不等于a的条件。

总结就是往后找就是从a的位置往后找符合b的字符,往前找就是从a的位置往前找,包括a。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息