php匹配所有圖片
㈠ php 正則匹配網頁中的所有圖片地址,包括img標簽里的,css里的 url() background()
--貼代碼樣板,否則只能給你這個:
/\bhttp:\/\/.+?\(?:jpe?g|gif)\b/is/
㈡ php正則匹配圖片路徑
給你個我寫的,並在項目中使用了很長時間的正則吧.
/<img.*src\s*=\s*[\"|\']?\s*([^>\"\'\s]*)/i
,我使用kindeditor保存文章,但是需要取出第N個圖片的地址作為文章的標志圖片,文章代碼(內容的html)保存到資料庫一個欄位,然後圖片地址保存到另外一個欄位.我就是使用上面的正則解決的.
我說明下,上面的地址是直接獲取img標簽內src屬性的值.在使用該正則的php頁面訪問該路徑如果能找到圖片的話,可以直接使用,如果不能,你可以使用preg_match_all將所有地址先保存到數組,然後處理路徑,比如獲取文件名稱(不含路徑部分),然後重新組成url,再刪除圖片.
我的例子:
preg_match_all("/<img.*src\s*=\s*[\"|\']?\s*([^>\"\'\s]*)/i",str_ireplace("\\","",$content),$arr);
呵呵 我的內容部分被php給加上\轉義了,所以我需要先把\去除,str_ireplace("\\","",$content),然後將匹配的內容保存到$arr數組(二維的).
$arr[1]就是存儲該路徑的數組.
㈢ 急急急!!!用正則表達式將下面文件中的代碼中所有的圖片標簽匹配出來,並以表格方式輸出信息
<?php
$str='<divclass="clearfixgoodsBox">
<ahref="goods.php?id=24">
<imgsrc="images/111.jpg"alt="諾基亞5530"/></a><br/>
<ahref="goods.php?id=25">
<imgsrc="images/222.jpg"alt="摩托羅拉M80"/></a><br/>
<ahref="goods.php?id=26">
<imgsrc="images/333.jpg"alt="三星A50"/></a><br/>
<ahref="goods.php?id=27">
<imgsrc="images/444.jpg"alt="諾基亞N97"/></a><br/>
<ahref="goods.php?id=28">
<imgsrc="images/555.jpg"alt="LG5280"/></a><br/>
<ahref="goods.php?id=29">
<imgsrc="images/666.jpg"alt="lenovoA38"/></a><br/>
</div>';
preg_match_all('~<imgsrc="(.*?)"s*alt="(.*?)"~',$str,$m);
print_r($m);
輸出格式自己遍歷 處理一下就好了
㈣ 請教!php 正則表達式匹配圖片問題。
<?php
$str = preg_replace("/height='[0-9]+?'/","width='100%'",$str);
?>
函數例子:http://hi-docs.com/php/preg_replace.html
㈤ php如何使用正則表達式匹配url圖片啊
可以這樣:
$image="http://xxxxxxxxx.jpg"
preg_match("/(http://)?w+.jpg/",$image,$matches);//http://可要可不要
echo$matches[0];//$matches[0]即為匹配的圖片路徑
以上只是匹配jpg類型的圖片
如果要匹配其他類型可以這樣使用
preg_match("/(http://)?w+.(jpg|jpeg|gif|png)/",$image,$matches);
echo$matches[0];
㈥ input file 分開操作上傳,php怎麼獲取全部的圖片
這個沒有辦法的, 你一個表單控制項只能保存你當前選擇的圖片, 如果再次選擇肯定會覆蓋上次選擇的圖片。
你想上傳多張圖片沒必要這么折騰,多選上傳行了。
如果你非要實現這種一次選一張圖片的功能, 也可以實現;你可以給你的input[type=file] 添加一個內容改變事件,當有文件選中的時候把這個文件資源保存在js變數中, 這個變數可以是一個數組,當全部文件選擇完畢之後,點擊上傳,觸發一個AJAX請求,把所有圖片上傳到服務端, 上傳完成後服務端可以返回一個包含所有上傳圖片路徑的數組, 這個時候在前端遍歷這些數組,讓它們顯示在你說的ul中。
㈦ 將下面文件中的代碼中所有的圖片標簽匹配出來,並以表格方式輸出信息
$text='<div>....需要匹配的文本....</div>';
if(preg_match_all('|<imgsrc="([^"]+?)"alt="([^"]+?)"|',$text,$reg)){
echo'<pre>';
print_r($reg);
echo'</pre>';
for($i=0;$i<count($reg[0]);$i++)echo"{$reg[$i][1]}{$reg[$i][2]}<br>";
}
生成表格的table代碼你應該會改的,試試看上面代碼的運行結果。
㈧ php正則匹配多張img
不知道這個是否符號你的要求:
<?php
$string = '<img src="abc"/><img src="efg"/><link src="a.css"/>';
echo preg_replace('/<img(.*?)src=/i','<img$1Layzyload=',$string);
//End_php
//輸出
<img Layzyload="abc"/><img Layzyload="efg"/><link src="a.css"/>
㈨ 需要一條 php 的preg_match_all 函數正則匹配規則 匹配頁面中 所有的 圖片的url 不是僅僅 img src
如果想要所有圖片,就先把所有src的鏈接的絕對路徑補齊http了,然後再取http://(.*?)jpg和http://(.*?)bmp和http://(.*?)png等圖片格式的,另外還有些不是以這個未後綴的,再對應寫正則
㈩ 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個特徵,其他的就別管他,這樣,所有圖片就出來了