|
(php 5 >= 5.3.0)
preg_filter ― 執(zhí)行一個(gè)正則表達(dá)式搜索和替換
mixed preg_filter ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )
preg_filter()等價(jià)于preg_replace() 除了它僅僅返回(可能經(jīng)過轉(zhuǎn)化)與目標(biāo)匹配的結(jié)果. 這個(gè)函數(shù)怎樣工作的更詳細(xì)信息請(qǐng)閱讀 preg_replace()文檔.
返回值
如果subject是一個(gè)數(shù)組, 返回一個(gè)數(shù)組, 其他情況返回一個(gè)字符串.
如果沒有找到匹配或者發(fā)生了錯(cuò)誤, 當(dāng)subject是數(shù)組 時(shí)返回一個(gè)空數(shù)組, 其他情況返回NULL.
范例
Example #1 比較preg_filter() 和preg_replace()的示例
復(fù)制代碼 代碼如下:
<?php
$subject = array('1', 'a', '2', 'b', '3', 'A', 'B', '4');
$pattern = array('//d/', '/[a-z]/', '/[1a]/');
$replace = array('A:$0', 'B:$0', 'C:$0');
echo "preg_filter returns/n";
print_r(preg_filter($pattern, $replace, $subject));
echo "preg_replace returns/n";
print_r(preg_replace($pattern, $replace, $subject));
?>
以上例程會(huì)輸出:
復(fù)制代碼 代碼如下:
preg_filter returns
Array
(
[0] => A:C:1
[1] => B:C:a
[2] => A:2
[3] => B:b
[4] => A:3
[7] => A:4
)
preg_replace returns
Array
(
[0] => A:C:1
[1] => B:C:a
[2] => A:2
[3] => B:b
[4] => A:3
[5] => A
[6] => B
[7] => A:4
)
- PCRE Patterns
- preg_replace() - 執(zhí)行一個(gè)正則表達(dá)式的搜索和替換
- preg_replace_callback() - 執(zhí)行一個(gè)正則表達(dá)式搜索并且使用一個(gè)回調(diào)進(jìn)行替換
- preg_grep() - 返回匹配模式的數(shù)組條目
- preg_last_error() - 返回最后一個(gè)PCRE正則執(zhí)行產(chǎn)生的錯(cuò)誤代碼
php技術(shù):php preg_filter執(zhí)行一個(gè)正則表達(dá)式搜索和替換,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。