1. 如何用php語言中的字元串匹配函數匹配如下代碼中的字元串,並將其賦值
preg_match_all('/?fid=([^"]*)">(d+.jpg)/is',$str,$Arr);
2. php中文正則匹配
php中utf-8編碼下用正則表達式匹配漢字的最終正確表達式——/^[\x{4e00}-\x{9fa5}]+$/u,
GBK: preg_match("/^[".chr(0xa1)."-".chr(0xff)."A-Za-z0-9_]+$/",$str); //GB2312漢字字母數字下劃線正則表達式。
編輯器查詢或者 js匹配中文
匹配中文字元的正則表達式: [\u4e00-\u9fa5]
或許你也需要匹配雙位元組字元,中文也是雙位元組的字元
匹配雙位元組字元(包括漢字在內):[^\x00-\xff]
3. 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個特徵,其他的就別管他,這樣,所有圖片就出來了
4. php 正則表達式 url匹配
1,preg_grep(pattern,array);它的返回值是一個新數組,新數組的元素是成功匹配的元素。
5. PHP 正則匹配A標簽獲得連接和文字
<a\b[^>]*\bhref=([^\s>]+)[^>]*>[\s\S]*?([^<>]*)</a>
解釋:
<a\b #匹配a標簽的開始
[^>]* #匹配a標簽href屬性前的其他屬性
\bhref=([^\s>]+) #匹配href屬性,並將匹配到的內容捕獲到分組1當中
[^>]*> #匹配a標簽的結束
[\s\S]*? #匹配a標簽文本前的img標簽
([^<>]*) #匹配a標簽文本並捕獲到分組2當中
</a> #匹配a標簽的關閉
分組1和分組2即為所需內容
簡化版:
<a\s*href=([^>]+)><img[^>]+>([^>]+)</a>
實際上簡化版可能效率更高……因為嚴格按照原文本格式來匹配。
不過如果標簽形式有一點變化就可能導致匹配失敗,所以這里寫了兩個版本。。
6. php正則匹配
『這兩個都是變化的』假設其他部分不變化。就可以
<?php
$t='<a target="_blank" href="http://www.77l.com/game/3087.html">
<a target="_blank" href="http://www.77l.com/news/1.html">
<a target="_blank" href="http://www.77l.com/catelog/13087.html">';
preg_match_all('/<a\s+.*?\s+href=(["\'])http:\/\/www\.77l\.com\/(\w+)\/(\d+).html\1>/',$t, $m);
for($i=0,$len=count($m[2]); $i<$len; $i++)
echo $m[2][$i].' => '.$m[3][$i].'<br />';
=============
game => 3087
news => 1
catelog => 13087