php过滤php标签
Ⅰ php 文章需要过滤掉img标签
PHP的preg_replace函数是 执行一个正则表达式的搜索和替换
语法
1:preg_replace (pattern ,replacement ,subject,limit,count )
参数
描述
pattern 正则表达式(字符串或字符串数组)
replacement 用于替换的字符串或字符串数组
subject 要进行搜索和替换的字符串或字符串数组。
limit 可选。每个模式在每个subject上进行替换的最大次数。默认是 -1(无限)。
cout 可选。完成的替换次数
示例:
<?php//把heigth高度属性删除,并添加width="100%"
$str='<div><p>12312321</p><imgsrc="xx.jpg"height="213"/><span>111</span><imgsrc="xz.jpg"/></div>';
$str=preg_replace("/height="[0-9]+?"/","",$str);
$str1=preg_replace("/src="(.+?)"/","src="$1"width="100%"",$str);
print_r($str1);
?>
Ⅱ php过滤标签如何实现,求高手指导
正则表达式:[.*?]
替换为空
完整的php程序如下:
<?php
$str='[backcolor=#ffffff][color=#333333][font=宋体,tahoma,arial]呵呵1233我是简介[/font][/color][/backcolor]';
$str=preg_replace('#[.*?]#','',$str);
echo$str;
?>
运行结果:
呵呵1233我是简介
Ⅲ PHP 过滤HTML中除了img标签外其它所有标签,同时保留标签内容,但<script>标签内的内容都清除。
提供实例:
<?php
$text = '<p>Test paragraph.</p><!-- Comment --> <a href="#fragment">Other text</a>';
echo strip_tags($text);
echo "\n";
// 允许 <p> 和 <a>
echo strip_tags($text, '<p><a>');
?>
以上例程会输出:
Test paragraph. Other text
<p>Test paragraph.</p> <a href="#fragment">Other text</a>
具体做法:
<?php
echo strip_tags($text, 'img');
?>
Ⅳ php怎样用正则表达式提取span标签中内容并过滤掉p和br标签
你要过滤的字符串是不是就都是这种,就这么长的。
你的需求是不是就是把字符串里面的各种标签都去掉?
如果你的需求和上面的说的相符,不需要用正则表达式,PHP 提供了 strip_tags 函数,用来过滤字符串里面的 html 标签,接收两个参数:第一个参数是要处理的字符串,第二个参数是允许(要保留)的tag
$str='<spanid="aaa"><p>11111</p><br><p>22222</p><span>';
echostrip_tags($str);//output:1111122222
echostrip_tags($str,'<span>');//output:<spanid="aaa">1111122222<span>
我觉得这可能是你的实际需求,如果不符合你的需求,继续追问。
Ⅳ 求一个php简单的过滤除<br>,<p>,<style>html标签的正则或方法
针对你这个<a>123</a>的例子的
$a=<<<str
<a>123</a>
str;
$preg ="/<(a)>(.*?)<\/(\1)>/is";
$str = preg_replace($preg, "<a>\\2</a>", $a);
echo $str;
除此之外PHP还有一个 过滤标签的函数 你可以看一下手册
Ⅵ php过滤多余html标签的代码!
$str = ” This line contains\tliberal \r\n use of whitespace.\n\n”;
$str = trim($str);// 首先去掉头尾空格
$str = preg_replace(’/\s(?=\s)/’, ‘’, $str);// 接着去掉两个空格以上的
$str = preg_replace(’/[\n\r\t]/’, ‘ ‘, $str);// 最后将非空格替换为一个空格
使用上面的例子可以去掉所有多余的空格。
首先使用TRim()去头尾空格,
接着用preg_replace()去掉重复的空格。
当中的(?=)表示只匹配后面的空格跟随前面的空格的空格
Ⅶ php 过滤掉html标签及标签内的所有内容
方法一:使用strip_tags()函数
strip_tags() 函数剥去字符串中的 HTML、XML 以及PHP的标签。
使用案例:
$string = "<p>这里是潘旭博客</p>"
$newStr = strip_tags($string);
echo $newStr;
方法二:使用str_replace()函数
str_replace() 函数以其他字符替换字符串中的一些字符(区分大小写)
使用案例:
$string = "<p>这里是潘旭博客</p>";
$newStr = str_replace(array("<p>","</p>"),array("",""));
echo $newStr;
另外还有一种是通过正则的方法,请参考:https://panxu.net/article/8385.html
Ⅷ php 正则过滤掉 指定的a标签
我这个更好
<?php
$str='<a class="qc" href="/car">汽车</a><a class="db" href="/car">大巴</a><a class="qc" href="/car">汽车</a>';
$str=preg_replace("/<a class=\"qc\" href=\"(.*)\">(.*)<\\/a>/iU","$2",$str); //过滤script标签
echo $str;
?>