正则篇-零宽断言

   1.(?=exp):零宽度正预测先行断言,它断言自身出现的位置的后面能匹配表达式exp。

   匹配后面为_path
   /(product)(?=_path)/.test('product_path') //true

2.(?<=exp):零宽度正回顾后发断言,它断言自身出现的位置的前面能匹配表达式exp
/(?<=name)(test)/.test('nametest') // true
3.(?!exp):零宽度负预测先行断言,断言此位置的后面不能匹配表达式exp
 匹配后面不是_path
 /(product)(?!_path)/.test('product_path') // false
 
  匹配后面不是_url
  /(product)(?!_path)/.test('product_url') // true

4.(?<!exp):零宽度负回顾后发断言来断言此位置的前面不能匹配表达式exp

匹配前面不是name:
/(?<!name:)(angelica)/ .test('name:angelica')  //false

匹配前面不是nick_name:
/(?<!nick_name:)(angelica)/.test('name:angelica') //true

 

 
posted @ 2018-03-12 14:10  吴小样  阅读(62)  评论(0)    收藏  举报