正規表現のプラス ( ) とスター (*) 数量子の違いを理解する
PHP の preg_match 関数では、正規表現で次のような数量子が使用されます。プラス ( ) およびスター (*) を使用して、特定のパターンが何回一致するかを指定します。これら 2 つの量指定子の違いは、その動作と、それらが生成する結果の一致にあります。
Plus ( ) 量指定子:
- の 1 つ以上の出現に一致します。前の式。
- はデフォルトで貪欲です。つまり、同じ数の文字と一致します。
スター (*) 数量子:
- 前の式の 0 個以上の出現と一致します。
- も同様ですデフォルトでは貪欲ですが、後ろに疑問符 (?) を追加することで「貪欲でない」にすることができます。 quantifier.
例: 貪欲な量子子と貪欲でない量子子
文字列「abab」を使用した次の例を考えてみましょう:
- a.*b: 貪欲一致は「abab」全体と一致しますstring.
- a.*?b: 貪欲でない一致は、文字列の最初の「ab」部分のみと一致するため、2 つの一致が生じます。 🎜>
量指定子の後に疑問符 (?) を追加すると、動作が貪欲から貪欲でない。貪欲でない量指定子は可能な限り少数の文字と一致するため、貪欲な量指定子と比較すると異なる結果が得られます。これは、可能な限り最小限の文字を一致させる必要がある特定のシナリオで役立ちます。
以上が正規表現における ` ` と `*` の量指定子の違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。