« 条件付きサブパターン
再帰的パターン »

コメント

コメントは、(?# という並びにより始まり、次の閉じカッコで終わります。 カッコのネストはできません。コメント内の文字は、パターンマッチには 全く関係しません。

PCRE_EXTENDED オプションが設定されている場合は、パターン中の文字クラス外にある エスケープされていない # 文字からもコメントが始まり、 次の改行文字で終わります。

例1 パターンの中でのコメントの使い方

<?php

$subject = 'test';

/* PCRE_EXTENDED を有効にせずにコメントを追加するには, (?# を使います */
$match = preg_match('/te(?# this is a comment)st/', $subject);
var_dump($match);

/* 空白文字と # は、PCRE_EXTENDED が無効の場合、パターンの一部として扱われます */
$match = preg_match('/te   #~~~~
st/', $subject);
var_dump($match);

/* PCRE_EXTENDED が有効な場合、全ての空白文字のデータや、エスケープされていない # の後に続く全てが無視されます */
$match = preg_match('/te    #~~~~
st/x', $subject);
var_dump($match);

上の例の出力は以下となります。

int(1)
int(0)
int(1)

関連キーワード:
match   コメント   パターン   subject   preg   dump   カッコ   エスケープ   空白   条件   サブパターン   再帰   正規   表現   構文   並び   ネスト   マッチ   関係   改行   使い方   comment   無効   一部
関連する関数・ページ:
function.preg-match   language.basic-syntax.comments   function.preg-match-all   function.preg-replace-callback-array   imagick.commentimage   book.pcre