您的位置:首页 > 其它

常用正则匹配表达式

2012-03-03 14:54 183 查看

1.匹配篇文章中“文字空白链接”,(.net|.com|.org|.cn)都匹配,但不能匹配超链接:

(?<!href=["|']?\s*)http://.+?\.(com|net|org|cn)

注意这里用到:

1)向后查看:(?<!href=["|']?\s*)

2)懒惰性取代贪婪性(防止回溯).+?

匹配测试内容:

不可缺少的铺子 http://auasf.53sadf3.com,多位于居民区附
http://auasf.53sadf3.org http://auasf.53sadf3.com
<a href='http://au.533.org'>2</a></li>

<li><a href="http://au.533.com">下一页</a></li></ul></div><!--//pages-->

<a href= http://au.533.com >

匹配结果如下:



2.匹配A标签中的 超链接地址:

href[\s]*=[\s]*('[^']*'|"[^\"]*"|['"]?[^\s|^>]*)

改进:

href[\s]*=[\s]*('[^']+'|"[^"]+"|['"]?[^\s^>^'^"]+)



3.匹配成对的Html标签:

<(\w*)[^>]*>.*?<\s*/\1>

4.所有Html标签:

<.+?> 惰性重复。

<[^>]+> 更好,使用取反字符集不需要回溯,效率高。

5.匹配A标签:

<(a)[^>]*>.*?<\s*/\1>

不包括标签中的内容:<\s*/?a[^>]*>

5.匹配中文字符:

[\u4E00-\u9FA5]+

说明:\u4E00-\u9FA5 是汉字的unicode编码的范围可以据此来匹配
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: