1. 程式人生 > >php 正則表示式匹配(輸出是否匹配以及匹配值) preg_match

php 正則表示式匹配(輸出是否匹配以及匹配值) preg_match

preg_match — 執行一個正則表示式匹配

preg_match ( $pattern , $subject , $matches )

搜尋subject與pattern給定的正則表示式的一個匹配.

引數 :

pattern : 要搜尋的模式,字串型別(正則表示式)。
subject : 輸入的字串。
matches :(可有可無)如果提供了引數matches,它將被填充為搜尋結果。 $matches[0]將包含完整模式匹配到的文字, $matches[1] 將包含第一個捕獲子組匹配到的文字,以此類推。

返回值 :

preg_match()返回 pattern 的匹配次數。 它的值將是0次(不匹配)或1次,因為preg_match
()在第一次匹配後 將會停止搜尋。preg_match_all()不同於此,它會一直搜尋subject 直到到達結尾。 如果發生錯誤preg_match()返回 FALSE。

例項1:

$label = 'content/112';
$a = preg_match('#content/(\d+)#i', $label, $mc);
var_dump($a);
var_dump($mc);

輸出:
int(1)
array(2) {
  [0]=>
  string(11) "content/112"
  [1]=>
  string(3) "112"
}

例項2:

$label
= 'content/112'; $a = preg_match('#(\w+)/(\d+)#i', $label, $mc); var_dump($a); var_dump($mc); 輸出: int(1) array(3) { [0]=> string(11) "content/112" [1]=> string(7) "content" [2]=> string(3) "112" }

例項3:

$label = 'content/112';
$a = preg_match('#content1111111/(\d+)#i', $label, $mc
); var_dump($a); var_dump($mc); 輸出: int(0) array(0) { }