preg_match_all用法
(PHP 4, PHP 5, PHP 7, PHP 8)
preg_match_all?—?執(zhí)行一個(gè)全局正則表達(dá)式匹配
說(shuō)明
preg_match_all(
????string?$pattern,
????string?$subject,
????array?&$matches?=?null,
????int?$flags?= 0,
????int?$offset?= 0
):?int|false|null
搜索subject中所有匹配pattern給定正則表達(dá)式 的匹配結(jié)果并且將它們以flag指定順序輸出到matches中.
在第一個(gè)匹配找到后, 子序列繼續(xù)從最后一次匹配位置搜索.
參數(shù)
pattern
要搜索的模式,字符串形式。
subject
輸入字符串。
matches
多維數(shù)組,作為輸出參數(shù)輸出所有匹配結(jié)果, 數(shù)組排序通過(guò)flags指定。
flags
可以結(jié)合下面標(biāo)記使用(注意不能同時(shí)使用PREG_PATTERN_ORDER和 PREG_SET_ORDER):
PREG_PATTERN_ORDER
結(jié)果排序?yàn)?matches[0]保存完整模式的所有匹配,?$matches[1]?保存第一個(gè)子組的所有匹配,以此類推。
案例:
<?php$str = "<p><img src='images/bg.png' alt='背景'/></p>";$str_RE="/[img|IMG].*?src=['|\"](.*?(?:[.gif|.jpg|.png]))['|\"].*?[\/]?>/";preg_match_all($str_RE,$str,$arr,PREG_SET_ORDER);print_r($arr);echo "<br/>";foreach ($arr as $key => $value) {echo $key.":".$value[0]."<br/>";echo $key.":".$value[1]."<br/>";} ?>效果:
總結(jié)
以上是生活随笔為你收集整理的preg_match_all用法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: preg_grep用法
- 下一篇: 正则表达式--密码复杂度验证--必须包含