ホームページ >バックエンド開発 >PHPチュートリアル >初心者の方は質問してください: 正規表現の後方参照に関する質問

初心者の方は質問してください: 正規表現の後方参照に関する質問

WBOY
WBOYオリジナル
2016-06-13 11:58:311012ブラウズ

アドバイスを求めている初心者: 正規表現の後方参照に関する質問
先輩方、皆さん、こんにちは。私は初心者なので助けが必要です。

最近「PHP in Detail」を読んだのですが、その本には、非キャプチャメタ文字を追加せずに、正規表現内の各部分式(()で囲んだもの)の一致結果が左から右に書かれていました。各部分式はバッファに格納され、1 ~ 99 の番号で参照されます。私の説明が正しいかどうかはわかりません。ここで 2 つの質問があります:
1. この本には、数値を使用して部分式を参照する場合、エスケープするには数値の前にバックスラッシュを追加する必要があると書かれていますが、これは非常にわかりにくいものです。バージョンは重要ですか?
2. 式内で、特定の部分式にメタ文字 ?: を追加すると、一致した結果が格納されなくなり、バッファーの数は 1 つも増加しません。では、この部分式は繰り返し呼び出すことができますか?

ありがとうございます!
------解決策----------------------
繰り返しの呼び出しと参照は同じ意味ですか?もしそうなら、あなたは答えを知りませんか?
------解決策---------
/^([a-zA-Z] * )d 1$/
これは、 をエスケープするために数値の前にバックスラッシュを追加しているだけではありませんか?
これが 2 番目の質問の意味ですか?
/^(?=[a-zA-Z] )d (?=[a-zA-Z] )$/

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