導航:首頁 > 編程語言 > php正則匹配圖片地址

php正則匹配圖片地址

發布時間:2023-01-31 07:27:39

php中用正則表達式獲取html中所有圖片網址

<?php
$html='你的html代碼';
preg_match_all('/s+srcs?=s?['|"]([^'|"]*)/is',$html,$Array);
print_r($Array);
//$Array就是你想要的數組

❷ php如何使用正則表達式匹配url圖片啊

$image='<imgsrc="/avatar/100/r6s1g11.jpg"/>';
preg_match('/src="(.*?(jpg|jpeg|gif|png))/',$image,$url);
echo$url[1];

網頁上的圖片都是使用IMG標簽載入的,所以在匹配的時候是以src=" 開始匹配,很多人會覺得為什麼不是以 http:// 開始匹配,那是因為圖片地址會有相對地址(如:"/xxx/xxx.jpg")和絕對地址(如:"http://www.xxx.com/xxx/xxx.jpg")兩種情況,相對地址是沒有http:// 的,所以為了這兩種情況都能匹配,故以src=" 是最好的。

".*" 是匹配多個字元的意思,?號的意思是只匹配到第一個出現的jpg或jpeg、gif、png。

因為圖片有很多格式類型,所以用"(jpg|jpeg|gif|png)"來匹配多個類型,"|"是或者的意思。

❸ 如何用PHP正則替換圖片的域名地址

preg_replace('/src="A.com/','src="B.com',$body);

❹ php正則表達式替換圖片地址

<?php

/*PHP正則提取圖片img標記中的任意屬性*/
$str = '<center><img src="/uploads/images/20100516000.jpg" height="120" width="120"><br />PHP正則提取或更改圖片img標記中的任意屬性</center>';

//1、取整個圖片代碼
preg_match('/<\s*img\s+[^>]*?src\s*=\s*(\'|\")(.*?)\\1[^>]*?\/?\s*>/i',$str,$match);
echo $match[0];

//2、取width
preg_match('/<img.+(width=\"?\d*\"?).+>/i',$str,$match);
echo $match[1];

//3、取height
preg_match('/<img.+(height=\"?\d*\"?).+>/i',$str,$match);
echo $match[1];

//4、取src
preg_match('/<img.+src=\"?(.+\.(jpg|gif|bmp|bnp|png))\"?.+>/i',$str,$match);
echo $match[1];

/*PHP正則替換圖片img標記中的任意屬性*/
//1、將src="/uploads/images/20100516000.jpg"替換為src="/uploads/uc/images/20100516000.jpg")
print preg_replace('/(<img.+src=\"?.+)(images\/)(.+\.(jpg|gif|bmp|bnp|png)\"?.+>)/i',"\${1}uc/images/\${3}",$str);
echo "<hr/>";

//2、將src="/uploads/images/20100516000.jpg"替換為src="/uploads/uc/images/20100516000.jpg",並省去寬和高
print preg_replace('/(<img).+(src=\"?.+)images\/(.+\.(jpg|gif|bmp|bnp|png)\"?).+>/i',"\${1} \${2}uc/images/\${3}>",$str);

?>

❺ PHP如何正則匹配alt><p></p><img和</div><p></p><div>

1,過濾所有html標簽的正則表達式:</?[^>]+>
2,過濾所有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]*

❻ php preg_match_all()函數怎麼匹配文章中的所有圖片鏈接並列印出來

<?php
$Html=@file_get_contents('5.html');
$Html=preg_replace('/s{2,}| /i','',$Html);//過濾掉換行和2個以上的空格
preg_match_all('/<imgs+[^>]*srcs?=s?['|"]([^'|"]*)['|"]/i',$Html,$Image);
print_r($Image);

圖片,通常情況下,無論有什麼屬性,他最基本的有2點,<img開頭, 有src屬性!

那麼只要匹配到這2個特徵,其他的就別管他,這樣,所有圖片就出來了

❼ 請問怎樣用php 正則表達式取設置寬和高的[img][/img]標簽裡面的圖片地址

用php給你運行了一個

$txt='[img=442,296]圖片地址1[/img]
[img=300,188]圖片地址2[/img]
[img=120,206]圖片地址3[/img]';
$re='/[img=(d+,d+)](S+?)[/img]/';//這里修改下,加上一個?防止以單行文本導致的定界符不準問題
$arr=[];
preg_match_all($re,$txt,$arr);
var_mp($arr);

運行結果如下

phptest.php
array(3){
[0]=>
array(3){
[0]=>
string(32)"[img=442,296]圖片地址1[/img]"
[1]=>
string(32)"[img=300,188]圖片地址2[/img]"
[2]=>
string(32)"[img=120,206]圖片地址3[/img]"
}
[1]=>
array(3){
[0]=>
string(7)"442,296"
[1]=>
string(7)"300,188"
[2]=>
string(7)"120,206"
}
[2]=>
array(3){
[0]=>
string(13)"圖片地址1"
[1]=>
string(13)"圖片地址2"
[2]=>
string(13)"圖片地址3"
}
}

//增加一個矩陣轉換
$txt='[img=442,296]圖片地址1[/img][img=300,188]圖片地址2[/img][img=120,206]圖片地址3[/img][img=120,206]wwww[/img]';
$re='/[img=(d+,d+)](S+?)[/img]/';

var_mp(preg_match_all_to_array($re,$txt));

functionpreg_match_all_to_array($re,$txt)
{
$arrs=[];
preg_match_all($re,$txt,$arrs);
if($arrs===false)
return$arrs;
//移除到總匹配數據
array_shift($arrs);
$return=[];
//獲取矩陣縱長
$arrs_longitudinal=count($arrs);
for($i=0;$i<$arrs_longitudinal;$i++){
//獲取單列橫長
$arrs_transverse=count($arrs[$i]);
for($j=0;$j<$arrs_transverse;$j++){
$return[$j][$i]=$arrs[$i][$j];
unset($arrs[$i][$j]);
}
unset($arrs[$i]);
}
return$return;
}

❽ PHP正則markdown文本中圖片的地址

❾ php正則匹配img標簽,並刪除

$str = 'alksdfjlaksj<img src="21412">';
$str = strip_tags($str,'img');
echo $str;

❿ preg_match_all() | php正則匹配圖片路徑,怎麼取完整的圖片鏈接。帶http開頭,求解決

你的正則應景可以完美匹配了,結果出現相對地址的原因可能是你的圖片地址本來就不是絕對地址。
var_mp($img_array[2]);

閱讀全文

與php正則匹配圖片地址相關的資料

熱點內容
有伺服器地址怎麼安裝軟體 瀏覽:659
安卓如何完全清除數據 瀏覽:690
安卓安卓證書怎麼信任 瀏覽:53
伺服器被攻擊如何解決 瀏覽:221
學霸變成程序員 瀏覽:881
c語言編譯錯誤fatalerror 瀏覽:441
ipv4內部伺服器地址怎麼分配 瀏覽:463
java線程安全的方法 瀏覽:950
重復命令畫梯形 瀏覽:164
在疫情就是命令 瀏覽:328
自己搭建一個什麼伺服器好玩 瀏覽:253
java基礎馬士兵 瀏覽:823
完美世界手游如何查看伺服器 瀏覽:859
光遇安卓與ios什麼時候互通 瀏覽:598
js如何運行時編譯 瀏覽:917
引力app在哪裡下載 瀏覽:609
編寫app如何得到錢 瀏覽:801
吉利汽車軟體放哪個文件夾安裝 瀏覽:223
多文件編譯c 瀏覽:543
頭頂加密後為什麼反而更稀疏 瀏覽:794