有時候我們需要使用php獲取網頁中的圖片並保存下來,這裡我們可以使用preg_match_all用來匹配圖片地址,需要的碼農可以參考下
preg_match_all 函數:
int preg_match_all ( string pattern, string subject, array matches [, int flags] )執行一個全局正則表達式匹配
在 subject 中搜索所有與 pattern 給出的正則表達式匹配的內容並將結果以 flags 指定的順序放到 matches 中。
搜索到第一個匹配項之後,接下來的搜索從上一個匹配項末尾開始。
flags 可以是下列標記的組合(注意把 PREG_PATTERN_ORDER 和 PREG_SET_ORDER 合起來用沒有意義):
PREG_PATTERN_ORDER 對結果排序使 $matches[0] 為全部模式匹配的數組,$matches[1] 為第一個括號中的子模式所匹配的字符串組成的數組,以此類推!
例子:
<?php $con = file_get_contents("http://www.xxx.com/news/jb-1.html"); $pattern="/<[img|IMG].*?src=[\'|\"](.*?(?:[\.gif|\.jpg|\.png]))[\'|\"].*?[\/]?>/"; preg_match_all($pattern,$con,$match); print_r($match); ?>
結果:
Array ( [0] => Array ( [0] => <img src="http://www.xxx.com/usr/themes/dddefault/images/logo.png" alt="碼農教程" /> [1] => <img> [2] => <img> ) [1] => Array ( [0] => http://www.xxx.com/usr/themes/dddefault/images/logo.png [1] => http://www.xxx.com/usr/uploads/2012/09/531656480.jpg [2] => http://www.xxx.com/usr/uploads/2012/09/2647136297.jpg ) )
原文地址:http://www.manongjc.com/article/708.html
相關閱讀:
php preg_match_all結合str_replace替換內容中所有img
php preg_match與preg_match_all 函數區別分析
php preg_match的匹配不同國家語言實例
PHP使用preg_match_all導致apache崩潰問題的解決方法
php preg_match正則匹配中的/u、/i、/s含義
php preg_match函數匹配的字符串長度的問題
php中preg_match isU表示什麼
php preg_match_all正則表達式函數使用講解
php preg_match正則表達式函數實例講解
javascript 正則表達式test()和exec()用法
php 正則表達式中的非貪婪模式匹配
php 正則表達式效率 貪婪、非貪婪與回溯分析
javascript 正則表達式貪婪模式與非貪婪模式
Javascript 中正則表達式的全局匹配模式分析
javascript 正則表達式匹配字符串string
js 驗證(判斷)是否為網址
php正則表達式函數使用實例
php preg_match函數和php preg_match_al函數l實例,方法,例子
php preg_match_all()函數使用實例
php preg_match正則表達式函數實例