PHP正则表达式过滤HTML标签属性(demo)

过滤html标签可以在PHP中内置函数,但是过滤太干净了。我们已经整理了一些例子,说明如何使用常规过滤器来过滤指定的HTML标记,如下所示。

有时,我们需要在收集时过滤多余的标记属性。例如,img标签过滤掉所有的属性除了src属性,如删除题目ALT和其他属性,以及一些脚onclick属性。

例如

过滤除SRC以外的所有属性:

复制代码代码如下所示:

$str = preg_replace( / S(SRC!){ a-za-z } = { } { 1 } { ^ } { 1 } / IU,$str} + { );



上面的例子代码是过滤掉所有的标签属性,除了SRC属性。

过滤器设置过滤了alt和SRC以外的所有属性

代码如下:

复制代码代码如下所示:

$str = preg_replace( / 的(!(SRC | ALT)){ a-za-z } = { ^ } * /单位',' ',$str);



过滤所有HTML标记属性的正则表达式:

复制代码代码如下所示:

$str = preg_replace( / /我} * >



只过滤alt属性的正则表达式:

复制代码代码如下所示:

(s)alt = }



过滤所有HTML标记属性的正则表达式:

复制代码代码如下所示:

$搜索=阵列(''si

' } * > 'si / /删除HTML标记

})},{ / /删除+空格

(| # 34) / / ;

(AMP | # 38);我

(LT | # 60);我

(GT | # 62);我

(nbsp | # 160);我

);作为PHP代码运行

$ =数组()

HTML = preg_replace美元($搜索,取代美元美元,HTML);