ホームページ  >  記事  >  バックエンド開発  >  PHP 正規表現 preg_match はマッチング関数をどのように実装しますか?

PHP 正規表現 preg_match はマッチング関数をどのように実装しますか?

黄舟
黄舟オリジナル
2017-07-20 13:15:393391ブラウズ

この記事の例では、PHP preg_match による正規表現マッチング関数の実装について説明します。参考のために皆さんと共有してください。詳細は次のとおりです:

preg_match — 正規表現の一致を実行します

preg_match ( $pattern , $subject , $matches )

件名とパターンで指定された正規表現の間の一致を検索します

パラメータ:

パターン: 検索するパターン、文字列タイプ(正規表現)。
件名 : 入力文字列。
matches : (オプション) パラメータ matches が指定されている場合、それが検索結果として入力されます。 $matches[0] には完全なパターンと一致するテキストが含まれ、$matches[1] には最初のキャプチャ サブグループと一致するテキストが含まれます。

戻り値:

preg_match() は、パターンの一致数を返します。 preg_match() は最初の一致後に検索を停止するため、その値は 0 (一致なし) または 1 になります。 preg_match_all() は、サブジェクトを最後まで検索するという点でこれとは異なります。 エラーが発生した場合、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) {
}


以上がPHP 正規表現 preg_match はマッチング関数をどのように実装しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。