本文較為詳細(xì)的介紹的了PHP中preg_match()函數(shù),并輔以實(shí)例,帶大家一起看一看,preg_match()函數(shù),如何進(jìn)行正則表達(dá)式的匹配。
語(yǔ)法:
preg_match ( string $pattern , string $subject ,array &$matches = ? ,int $flags = 0 ,int $offset = 0 )
$pattern:要搜索的模式,字符串類型。
$subject:輸入字符串。
$matches:如果提供了參數(shù)matches,它將被填充為搜索結(jié)果。 $matches[0]將包含完整模式匹配到的文本, $matches[1] 將包含第一個(gè)捕獲子組匹配到的文本,以此類推。
$flags:可以被設(shè)置為以下標(biāo)記值的組合:PREG_UNMATCHED_AS_NULL、PREG_OFFSET_CAPTURE
$offset:可選參數(shù) offset 用于 指定從目標(biāo)字符串的某個(gè)位置開(kāi)始搜索(單位是字節(jié))。
返回值:匹配次數(shù)。 它的值將是0次(不匹配)或1次,因?yàn)閜reg_match()在第一次匹配后 將會(huì)停止匹配。發(fā)生錯(cuò)誤preg_match()返回 FALSE。
使用實(shí)例:
<?php //從URL中獲取主機(jī)名稱 preg_match('@^(?:http://)?([^/]+)@i', "http://www.zztuku.com/index.html", $matches); $host = $matches[1]; //獲取主機(jī)名稱的后面兩部分 preg_match('/[^.]+\.[^.]+$/', $host, $matches); echo "admin name is: {$matches[0]}\n"; ?>
輸出:
admin name is: zztuku.com