正则表达式积累

    今天同事有个问题问我,一个html里面能否用正则表达式匹配特定的标签,我说完全没问题,他让我帮他写写。正则表达式这个东西,自己以前也用过,但是很长时间没有用了,于是乎又去翻看某大神写的一篇文章

正则表达式30分钟入门教程又重新复习了一下正则表达式的知识收获不少,我发现正则表达式是个很容易忘记的东西,所以我就想把我写过的每一个正则表达式都在这里进行记录,然后做详细的解释,如发现有错的地方希望各位网友加以指正多谢,以方便我查看。那就先写我我今天完成的第一个正则表达式:

 

 1、匹配html特定标签

 获取html字符串里面data标签的包含的内容,字符串格式如下,只需要里面的data标签

  

<taxML>
	<action>findJfdwdjxx</action>
	<data><data><nsrbm>4401849021382</nsrbm></data></data>
</taxML>

   实现匹配的正则表达式如下:   

(?<=<data>).*(?=</data>)

详解:(?<=exp)在正则表达式里面叫零宽度正回顾后发断言,它断言自身出现的位置的前面能匹配表达式exp。那(?<=<data>)表示正则表达式断言要匹配的内容前面是<data>标签但是不包括<data>标签。
    .*也就是任意字符
    (?=exp)也叫零宽度正预测先行断言,它断言自身出现的位置的后面能匹配表达式exp。那(?=</data>)表示正则表达式断言要匹配的内容后面是</data>标签但是不包含</data>标签 
所以这个正则表达式是完全可以满足上述需求的。 

猜你喜欢

转载自tommy-lu.iteye.com/blog/2290690