php去除html,空格,换行,提取纯文字的方法:
1、清除字符串两边的空格,代码为【$str = trim($str)】;
2、匹配html中的空格,代码为【$str = preg_replace("/ /","",$str)】。
php去除html,空格,换行,提取纯文字的方法:
方法一:
function DeleteHtml($str)
{ $str = trim($str); //清除字符串两边的空格$str = preg_replace("/\t/","",$str); //使用正则表达式替换内容,如:空格,换行,并将替换为空。$str = preg_replace("/\r\n/","",$str); $str = preg_replace("/\r/","",$str); $str = preg_replace("/\n/","",$str); $str = preg_replace("/ /","",$str);$str = preg_replace("/ /","",$str); //匹配html中的空格return trim($str); //返回字符串
}调用方法DeleteHtml($str);$str 为需要清除的页面字符串
方法二:
function DeleteHtml($str)
{ $str = trim($str); //清除字符串两边的空格$str = strip_tags($str,""); //利用php自带的函数清除html格式$str = preg_replace("/\t/","",$str); //使用正则表达式替换内容,如:空格,换行,并将替换为空。$str = preg_replace("/\r\n/","",$str); $str = preg_replace("/\r/","",$str); $str = preg_replace("/\n/","",$str); $str = preg_replace("/ /","",$str);$str = preg_replace("/ /","",$str); //匹配html中的空格return trim($str); //返回字符串
}
方法三:
去除字符串内部的空行:$str = preg_replace("/(s*?r?ns*?)+/","n",$str);
去除全部的空行,包括内部和头尾:$str = preg_replace('/($s*$)|(^s*^)/m', '',$str);
扩展1:
htmlspecialchars_decode() 函数把一些预定义的 HTML 实体转换为字符。
会被解码的 HTML 实体是:
- & 解码成 & (和号)
- " 解码成 " (双引号)
- ' 解码成 ' (单引号)
- < 解码成 < (小于)
- > 解码成 > (大于)
实例把预定义的 HTML 实体 "<"(小于)和 ">"(大于)转换为字符:<?php
$str = "This is some <b>bold</b> text.";
echo htmlspecialchars_decode($str);
?>
<!DOCTYPE html>
<html>
<body>This is some <b>bold</b> text.
</body>
</html>
上面代码的浏览器输出如下:This is some bold text.
扩展2:
php自带的函数可以去除/删除字符串中的HTML标签/代码。
strip_tags(string,allow):函数剥去 HTML、XML 以及 PHP 的标签。
参数:string,必填,规定要检查的字符串;allow,选填,规定允许存在的标签,这些标签不会被删除。
$str = '郭碗瓢盆-<span style="color:#f00;">PHP</span>';$str1 = strip_tags($str); // 删除所有HTML标签$str2 = strip_tags($str,'<span>'); // 保留 <span>标签echo $str1; // 输出 郭碗瓢盆-PHPecho $str2; // 样式不一样喔