一个字符串处理问题 <P><img src = "1.jpg"/></P><P>test string</P>上面的字符串里的<img>标记在<P>标记里面,如何保留<img>标记里的内容,而去掉外面的<P>标记呢?我用了strip_tags($html,'<img>'); ,这个但是取不到,有什么解决办法? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我想要的结果是 从 <P><img src = "1.jpg"/></P><P>test string</P> 里提取<img src = "1.jpg"/> strip_tags这个函数是去掉<img>的标记,并不是取得img的标记。你要去掉p标记应该用strip_tags($html,'<p>'); 输入字符串: <P><img src = "1.jpg"/></P><P>test string</P> 输出:<img src = "1.jpg"/>用strip_tags($html,'<p>'), 会把里面的 img 删除掉的。因为img标记 在 P标记里 用错函数了!手册:===================string strip_tags ( string str [, string allowable_tags] )第二个参数明明标明了是allowable_tags,就是不被strip掉的html tags$str = '<P><img src = "1.jpg"/></P><P>test string</P>';echo htmlspecialchars(strip_tags($str,'<img>'));//<img src = "1.jpg"/>test string 我要的结果是保留<img src = "1.jpg"/>标记,其他的内容都不要。最后只要<img src = "1.jpg"/> <?php $str='<P><img src = "1.jpg"/></P><P>test string</P>';preg_match("/\<p\>(.*)\<\/p\>\<p\>(.*)\<\/p\>/i",$str,$match);echo htmlspecialchars($match[1]);//<img src = "1.jpg"/>?> 你这个对所以的HTML标记都能删除的?我这里面的标记不仅仅是<P>, 还有好多其他的。 先用strip_tags去掉除img以外的标签,再用正则取/<img[^>]*\/>/ $s = '<P><img src = "1.jpg"/></P><P>test string</P>';preg_match_all("/<img.+?>/i", $s, $r);print_r($r);Array( [0] => Array ( [0] => <img src = "1.jpg"/> )) 用正则吧 preg_match("/<img(.+?)>/",$str,$match) $match== '<P><img src = "1.jpg"/></P><P>test string</P>';$res=preg_match("/<img(.+?)>/",‘’,$match); <?php$html="<P><img src = "1.jpg"/></P><P>test string</P>";$replace=substr_replace("<p>","<img src = "1.jpg"/>",$html);//利用substr_replace部分替换函数echo "$replace"?> 高分请高人指点 stdClass Object 转数组 php的奇怪问题 后台菜单,点击谁,谁变色。请问怎么个设计思路。 新手,帮助推荐好书和视频 问一个PHP基础性的问题 请教关于mysql 纯数字命名表格的问题 生成静态页面,回答详细的话另给分! 关于浮点运算问题~!请各位赐教 倡议: 论坛数据采用xml来标准化, 推行xmlBBS!! 各位怎样解决PHP中重复引用的问题 还是请教高手,解决php替换问题!!! 数据库查询语法。。
输入字符串: <P><img src = "1.jpg"/></P><P>test string</P> 输出:<img src = "1.jpg"/>用strip_tags($html,'<p>'), 会把里面的 img 删除掉的。因为img标记 在 P标记里
===================
string strip_tags ( string str [, string allowable_tags] )
第二个参数明明标明了是allowable_tags,就是不被strip掉的html tags$str = '<P><img src = "1.jpg"/></P><P>test string</P>';
echo htmlspecialchars(strip_tags($str,'<img>'));//<img src = "1.jpg"/>test string
我要的结果是保留<img src = "1.jpg"/>标记,其他的内容都不要。最后只要<img src = "1.jpg"/>
$str='<P><img src = "1.jpg"/></P><P>test string</P>';
preg_match("/\<p\>(.*)\<\/p\>\<p\>(.*)\<\/p\>/i",$str,$match);
echo htmlspecialchars($match[1]);//<img src = "1.jpg"/>
?>
你这个对所以的HTML标记都能删除的?我这里面的标记不仅仅是<P>, 还有好多其他的。
preg_match_all("/<img.+?>/i", $s, $r);
print_r($r);Array
(
[0] => Array
(
[0] => <img src = "1.jpg"/>
))
$html="<P><img src = "1.jpg"/></P><P>test string</P>";
$replace=substr_replace("<p>","<img src = "1.jpg"/>",$html);
//利用substr_replace部分替换函数
echo "$replace"?>