先用正则表达式获取IMG标签,然后把每个IMG标签的SRC抽取出来,并且组合成自己的内容,最后进行替换
我想对 html 的图片进行提取.
1 2 | <img ico src= "/noavatar_small.gif" />
<img src= "/noavatar_small.gif" />
|
로그인 후 복사
如上地址. 我想全部提取出来 但是包含'ico' 的地址 忽略. 求正则 , 就是有些图片 提取.有些不提取.
例子:
1 | <s*imgs+[^>]*?srcs*=s*('|")(.*?)\1[^>]*?/?s*>
|
로그인 후 복사
经改进后..
正确解答如下
实例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | $content = '<img alt= "" src= "js/fckeditor/UserFiles/image/F201005201210502415831196.jpg" width= "600" height= "366" ><br><br><br><br><img alt= "" src= "js/fckeditor/UserFiles/image/33_avatar_middle.jpg" width= "120" height= "120" >';
preg_match_all( "/<img(.*)src=" ([^ "]+)" [^>]+>/isU", $content , $matches );
$img = "" ;
if (! empty ( $matches )) {
$img = $matches [2];
} else {
$img = "" ;
}
if (! empty ( $img )) {
$img_url = "http://" . $_SERVER ['SERVER_NAME'];
$patterns = array ();
$replacements = array ();
foreach ( $img as $imgItem ){
$final_imgUrl = $img_url . $imgItem ;
$replacements [] = $final_imgUrl ;
$img_new = "/" .preg_replace( "///i" , "/" , $imgItem ). "/" ;
$patterns [] = $img_new ;
}
ksort( $patterns );
ksort( $replacements );
$vote_content = preg_replace( $patterns , $replacements , $content );
|
로그인 후 복사
相关文章:
php正则表达式提取html标签的问题
提取html标签的php代码示例
通过php提取HTML标签