码迷,mamicode.com
首页 > 编程语言 > 详细

java前后向查找个人理解

时间:2017-06-16 18:23:04      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:com   反向   位置   匹配   查找   apple   包含   nbsp   简单的   

举一个最简单的栗子

这个前后说的是0宽所在的位置,是在:前还是后

http://www.sb.com

1.前向正向查找

(1)

如果用:.*(?=:)

首先(?=:)被称作0宽度断言,所谓0宽度应该是插在了p和:之间的那个0宽度

这个是规范用法,匹配http,不包括:

(2)换顺序

(?=:).*

(?=:)还是表示插在p和:之间的0宽,所以匹配://www.sb.com,包含:

2.前向反向查找

(1)

.*(?!:)

匹配全部,因为http://www.sb.com后面并没有:,意思是有:的话,不能匹配:前面的那段,没有的话,相当于.*

(2)换顺序

(?!:) .*

匹配全部,只要匹配结果前面没有:就行

3.后向正向查找

(?<=\$)[0-9.]+

i need 100$100

零宽插在了$的后面,所以不包含$,匹配100

换顺序

[0-9.]+(?<=\$)

匹配不到,以为100$会包含其中

[0-9.\$]+(?<=\$)

会匹配到100$

4.后向负向查找

i paid $7000 for 1 apple

\b(?<!\$)\d+\b

也就是如果有$,后面跟数字,不要.

换顺序

\b\d+(?<!\$)\b

匹配7000和1,只要7000和1后没有$

新发现就是$7000也算单词边界.

 

 

 

http://www.sb.com

java前后向查找个人理解

标签:com   反向   位置   匹配   查找   apple   包含   nbsp   简单的   

原文地址:http://www.cnblogs.com/ptqueen/p/7028712.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!