php去除标签
A. php怎么使用正则去除字符串中带有某个class的标签
<?php
$str='<ulid="Lb_show">
<listyle="float:left;width:100%;"class="clone">
<imgsrc="/banner5.jpg">
</li>
<listyle="float:left;width:70%;">
<imgsrc="/banner1.png">
</li>
<listyle="float:left;width:60%;"class="clone">
<imgsrc="/banner1.png">
</li>
<listyle="float:left;width:30%;">
<imgsrc="/banner1.png">
</li>
<listyle="float:left;width:50%;"class="clone">
<imgsrc="/banner5.jpg">
</li>
</ul>';
$str=preg_replace('~<li.*?class="clone"[sS]*?</li>~','',$str);
echo$str;
B. PHP如何去除HTML标签
functioncut_tags_html($str)
{
$search=array("'<script[^>]*?>.*?</script>'si",//去掉javascript
"'<[/!]*?[^<>]*?>'si",//去掉HTML标记
"'([ ])[s]+'",//去掉空白字符
"'&(quot|#34);'i",//替换HTML实体
"'&(amp|#38);'i",
"'&(lt|#60);'i",
"'&(gt|#62);'i",
"'&(nbsp|#160);'i",
"'&(iexcl|#161);'i",
"'&(cent|#162);'i",
"'&(pound|#163);'i",
"'&(|#169);'i",
"'peihuo.cn|peihuo.mobi|div|/'",
"'&#(d+);'e");//作为PHP代码运行
$replace=array("",
"",
"",//"\1",
""",
"&",
"<",
">",
"",
chr(161),
chr(162),
chr(163),
chr(169),
"",
"chr(\1)");
returnpreg_replace($search,$replace,$str);
}
C. php使用正则表达式去掉一段网页内容中所有<div>标签,求助
<?php
$string="<php>1<p>02</p><p>888</p></php><p>123</p><php><p>234</p></php>";
$pattern = '/<php>([\s\S]*)<\/php>/iU';
preg_match_all($pattern,$string,$d);
foreach ($d[1] as $val) {
$string = str_replace($val,strip_tags($val),$string);
}
echo $string;
?>
D. php 如何删除特定标签
使用正则表达式直接替换即可,
$message = preg_replace('/<img.*\/>/U', '', $message);
E. strip_tags — 从字符串中去除 HTML 和 PHP 标记
这函数挺有用的,这是总结后的知识点,希望能帮到你!
strip_tags
(PHP 4, PHP 5, PHP 7, PHP 8)
strip_tags — 从字符串中去除 HTML 和 PHP 标记
说明
strip_tags ( string $str , string $allowable_tags = ? ) : string
该函数尝试返回给定的字符串 str 去除空字符、HTML 和 PHP 标记后的结果。它使用与函数 fgetss() 一样的机制去除标记。
参数
str
输入字符串。
allowable_tags
使用可选的第二个参数指定不被去除的字符列表。
注意:
HTML 注释和 PHP 标签也会被去除。这里是硬编码处理的,所以无法通过 allowable_tags 参数进行改变。
注意:
In PHP 5.3.4 and later, self-closing XHTML tags are ignored and only non-self-closing tags should be used in allowable_tags. For example, to allow both
and , you should use:');
?>
返回值
返回处理后的字符串。
F. php 如何删除特定标签
数据库信息里边有html标签吗?如果是去掉所有html标签 那就用strip_tags函数,如果去除特定的所有标签 那么就那就用正则了,,自己写罗 假设几种情况 一是像img的 一个像a的假设为imgpreg_replace("/<img[^>]*\/>/","",$str);假设为a那么就是preg_replace(“/<a[^>]*>.*<\/a>/","",$str);
G. 怎么去除php页面中的HTML标签啊
直接用strip_tags()函数
strip_tags() 函数剥去 HTML、XML 以及 PHP 的标签。
H. PHP如何去除HTML标签
echo strip_tags(“Hello <bWorld</b”); // 去除 HTML、XML 以及 PHP 的标签。对于非标准的 HTML 代码也能正确的去除:
I. 用php过滤html部分标签
$str=preg_replace("/\s+/", " ", $str); //过滤多余回车
$str=preg_replace("/<[ ]+/si","<",$str); //过滤<__("<"号后面带空格)
$str=preg_replace("/<\!--.*?-->/si","",$str); //注释
$str=preg_replace("/<(\!.*?)>/si","",$str); //过滤DOCTYPE
$str=preg_replace("/<(\/?html.*?)>/si","",$str); //过滤html标签
$str=preg_replace("/<(\/?head.*?)>/si","",$str); //过滤head标签
$str=preg_replace("/<(\/?meta.*?)>/si","",$str); //过滤meta标签
$str=preg_replace("/<(\/?body.*?)>/si","",$str); //过滤body标签
$str=preg_replace("/<(\/?link.*?)>/si","",$str); //过滤link标签
$str=preg_replace("/<(\/?form.*?)>/si","",$str); //过滤form标签
$str=preg_replace("/cookie/si","COOKIE",$str); //过滤COOKIE标签
$str=preg_replace("/<(applet.*?)>(.*?)<(\/applet.*?)>/si","",$str); //过滤applet标签
$str=preg_replace("/<(\/?applet.*?)>/si","",$str); //过滤applet标签
$str=preg_replace("/<(style.*?)>(.*?)<(\/style.*?)>/si","",$str); //过滤style标签
$str=preg_replace("/<(\/?style.*?)>/si","",$str); //过滤style标签
$str=preg_replace("/<(title.*?)>(.*?)<(\/title.*?)>/si","",$str); //过滤title标签
$str=preg_replace("/<(\/?title.*?)>/si","",$str); //过滤title标签
$str=preg_replace("/<(object.*?)>(.*?)<(\/object.*?)>/si","",$str); //过滤object标签
$str=preg_replace("/<(\/?objec.*?)>/si","",$str); //过滤object标签
$str=preg_replace("/<(noframes.*?)>(.*?)<(\/noframes.*?)>/si","",$str); //过滤noframes标签
$str=preg_replace("/<(\/?noframes.*?)>/si","",$str); //过滤noframes标签
$str=preg_replace("/<(i?frame.*?)>(.*?)<(\/i?frame.*?)>/si","",$str); //过滤frame标签
$str=preg_replace("/<(\/?i?frame.*?)>/si","",$str); //过滤frame标签
$str=preg_replace("/<(script.*?)>(.*?)<(\/script.*?)>/si","",$str); //过滤script标签
$str=preg_replace("/<(\/?script.*?)>/si","",$str); //过滤script标签
$str=preg_replace("/javascript/si","Javascript",$str); //过滤script标签
$str=preg_replace("/vbscript/si","Vbscript",$str); //过滤script标签
$str=preg_replace("/on([a-z]+)\s*=/si","On\\1=",$str); //过滤script标签
$str=preg_replace("//si","&#",$str); //过滤script标签,如javAsCript:alert(
清除空格,换行
function DeleteHtml($str)
{
$str = trim($str);
$str = strip_tags($str,"");
$str = ereg_replace("\t","",$str);
$str = ereg_replace("\r\n","",$str);
$str = ereg_replace("\r","",$str);
$str = ereg_replace("\n","",$str);
$str = ereg_replace(" "," ",$str);
return trim($str);
}
过滤HTML属性
1,过滤所有html标签的正则表达式:
复制代码 代码如下:
</?[^>]+>
//过滤所有html标签的属性的正则表达式:
$html = preg_replace("/<([a-zA-Z]+)[^>]*>/","<\\1>",$html);
3,过滤部分html标签的正则表达式的排除式(比如排除<p>,即不过滤<p>):
复制代码 代码如下:
</?[^pP/>]+>
4,过滤部分html标签的正则表达式的枚举式(比如需要过滤<a><p><b>等):
复制代码 代码如下:
</?[aApPbB][^>]*>
5,过滤部分html标签的属性的正则表达式的排除式(比如排除alt属性,即不过滤alt属性):
复制代码 代码如下:
\s(?!alt)[a-zA-Z]+=[^\s]*
6,过滤部分html标签的属性的正则表达式的枚举式(比如alt属性):
复制代码 代码如下:
(\s)alt=[^\s]*
J. php 字符串如何去除\r\t标签
//php 有三种方法来解决
//1、使用str_replace 来替换换行
$str = str_replace(array("/r/n", "/r", "/n"), "", $str);
//2、使用正则替换
$str = preg_replace('//s*/', '', $str);
//3、使用php定义好的变量 (建议使用)
PHP_EOL
直接跟在要换行的语句后面即可;
这里不得不重新看一下php那些已经定义好的变量
PHP_EOL就是其中的一个,代表php的换行符,这个变量会根据平台而变,在windows下会是/r/n,在linux下是/n,在mac下是/r
$str = str_replace(PHP_EOL, '', $str);