正則表達式我有一個問題,使用正則表達式時存在的:與preg_match_all
php> $html = "<html><head><body><h1>hello world</h1><img src=\"data:rawIMGdata\" /><p/><img src=\"sdfsdf.jpg\" title=\"pic1\" /><p/><div class=\"myclass\"><img src=\"data:imageData\" /></div><img alt=\"bla\" src=\"bla.jpg\" title=\"bla\" /></body></html>";
php> $pat = '/<img.*src="(data:.*)"/m';
php> preg_match_all($pat, $html, $matching);
php> var_dump($matching);
array(2) {
[0]=>
array(1) {
[0]=>
string(169) "<img src="data:rawIMGdata" /><p/><img src="sdfsdf.jpg" title="pic1" /><p/><div class="myclass"><img src="data:imageData" /></div><img alt="bla" src="bla.jpg" title="bla""
}
[1]=>
array(1) {
[0]=>
string(63) "data:imageData" /></div><img alt="bla" src="bla.jpg" title="bla"
}
}
我的預期輸出將只是一個occurence「數據:爲imageData」第二陣列中,而且應該有兩場比賽( 「data:rawIMGdata」)
我是否用錯誤的方式定義了我的正則表達式?
問候, Broncko
爲我的偉大工程!猜猜我必須深入一點正則表達式。 Thx – Broncko