码迷,mamicode.com
首页 > Web开发 > 详细

Perl如何过滤html标签

时间:2014-07-17 21:06:10      阅读:381      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   color   art   io   

比如一串字符串

<div><b>123</b></div>


如果只想拿到123怎么办呢?

用perl的正则表达式可以很容易的做到。

$str =~  s/<([a-zA-Z]\w*)(\s+\S+)*>(.+?)<\/\1>/$3/sg;


这种只能过滤掉左右对称的标签,如果你的字符串里的html标签不对称,或者是有缺陷,这种方式就做不了了。

如果上边的看不懂,那看个简单的:

$retPromotionInfo=~s/<.*?>//g;
$retPromotionInfo=~s/&lt;.*?&gt;//g;


上边的问号代表懒惰匹配,如果不加问号,会把中间的内容也过滤掉。


第二行表示对转义过的标签也进行过滤,

&lt; 代表 <

&gt; 代表 >


好了,就到这里吧。

原文:http://blog.csdn.net/hongchangfirst/article/details/37693005

作者:hongchangfirst

hongchangfirst的主页:http://blog.csdn.net/hongchangfirst


Perl如何过滤html标签,布布扣,bubuko.com

Perl如何过滤html标签

标签:style   blog   http   color   art   io   

原文地址:http://blog.csdn.net/hongchangfirst/article/details/37693005

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