国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

PHP中preg_match_all函數正則匹配詳解

2024-09-04 11:47:35
字體:
來源:轉載
供稿:網友

preg_match_all函數是用來獲取指定數據內容的,它經常用于執行正則表達多,下面我來給大家介紹兩個關于preg_match_all函數實現,一個是獲取url參數,一個是獲取內容中圖片方法.

preg_match_all — 執行一個全局正則表達式匹配

int preg_match_all ( string $pattern ,string $subject [,array &$matches [, int $flags = PREG_PATTERN_ORDER [,int $offset = 0 ]]] )

例,代碼如下:

  1. <?php 
  2. preg_match_all("|<[^>]+>(.*)</[^>]+>|U"
  3.     "<b>example: </b><div align=left>this is a test</div>"
  4.     $out, PREG_PATTERN_ORDER); 
  5. echo $out[0][0] . ", " . $out[0][1] . "n"
  6. echo $out[1][0] . ", " . $out[1][1] . "n"
  7. ?> 

如何獲取偽靜態url中的參數變量,已經對應的值,比如說,你現在url的是這樣的,/js/d1b3cid419299191rs好腳本.

你的.htaccess文件會這樣寫rewirte規則 RewriteRule ^js/(.*)$ /index.php?m=Sell&a=index&g=$1 [QSA,PT,L]

這樣你就可以把g接收過來,代碼如下:

  1. $get = 'd1b3cid419299191rs好腳本';  
  2. $rs_pos = strpos($get,'rs');  
  3. if($rs_pos !== false)  
  4. {  
  5.     $rs = substr($get,$rs_pos);  
  6.     $rs = str_replace('rs','',$rs);  
  7.     $rs = strpos($rs,'/')!==false ? substr($rs,0,strpos($rs,'/')) : $rs;  
  8.     $get = substr($get,0,$rs_pos);  
  9. }  
  10. echo 'keywords='.$rs;  
  11. echo '<br>';  
  12. preg_match_all('/([a-z]*)([0-9]+)/',$get,$m);  
  13. if($m)  
  14. {  
  15.         $k = $v = '';  
  16.         $count = count($m[1]);  
  17.         for($i = 0; $i <= $count$i++)  
  18.         {  
  19.             ${$m[1][$i]} = $m[2][$i];  
  20.             if(isset(${$m[1][$i]}))  
  21.             {//開源代碼Vevb.com 
  22.                 echo $m[1][$i].'='.${$m[1][$i]};  
  23.                 echo '<br>';  
  24.             }  
  25.         }  
  26. //結果:keywords=好腳本,d=1,b=3,cid=419299191 

匹配文章中的圖片,代碼如下:

  1. <?php 
  2. $con = file_get_contents("http://m.survivalescaperooms.com/"); 
  3. $pattern="/<[img|IMG].*?src=['|"](.*?(?:[.gif|.jpg|.png]))['|"].*?[/]?>/"
  4. preg_match_all($pattern,$con,$match); 
  5. print_r($match); 
  6. ?> 
  7.  
  8. 輸出代碼 
  9.  
  10. Array 
  11. [0] => Array 
  12. [0] => <img src="http://m.survivalescaperooms.com/usr/themes/dddefault/images/logo.png" alt="" /> 
  13. [1] => <img style="display: block; margin-left: auto; margin-right: auto;" title="" src="http://m.survivalescaperooms.com/usr/uploads/2012/09/531656480.jpg" alt="2" /> 
  14. [2] => <img style="display: block; margin-left: auto; margin-right: auto;" src="http://m.survivalescaperooms.com/usr/uploads/2012/09/2647136297.jpg" alt="875EA1C00E50B4542797E24FA6E7E1F2.jpg" /> 
  15. )//開源代碼Vevb.com 
  16. [1] => Array 
  17. [0] => http://m.survivalescaperooms.com/usr/themes/dddefault/images/logo.png 
  18. [1] => http://m.survivalescaperooms.com/usr/uploads/2012/09/531656480.jpg 
  19. [2] => http://m.survivalescaperooms.com/usr/uploads/2012/09/2647136297.jpg 
  20. )

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 诸暨市| 类乌齐县| 桓台县| 永昌县| 浦县| 牟定县| 芷江| 江陵县| 札达县| 南川市| 京山县| 友谊县| 盐山县| 孟连| 舞阳县| 日土县| 门源| 丰镇市| 云和县| 永清县| 英山县| 祥云县| 土默特右旗| 三原县| 定安县| 辽中县| 台东县| 东城区| 黑河市| 宜阳县| 壤塘县| 称多县| 宁蒗| 大化| 敦煌市| 梁平县| 平安县| 和林格尔县| 富裕县| 达孜县| 库伦旗|