2016年6月27日星期一

正规表达式的备忘录(吝啬匹配)

* 和 + 是贪婪的匹配,尽量长的匹配,有个不为人周知的修饰法,*或者+后面再加上?, 就是表示尽量短的匹配方式。

有时候想要尽量短的匹配,就需要用这个?修饰。
找了半天才找到这个方法,不容易啊。
例如
开始特征
  <span>我要找的内容</span
结束特征
开始特征
  无关的内容
结束特征
用JavaScript来做实验,如果用正规表达式
/开始特征([^]*)结束特征/
注:[^]表示任意字符,包括回车换行。()表示抓包。
来找,结果会连"无关的内容"那段也包含进去了。
但是如果在*后面加个?就如我所愿了。
/开始特征([^]*?)结束特征/


没有评论:

发表评论