ホームページ >バックエンド開発 >PHPチュートリアル >preg_match_all 正規表現の貪欲モードと非貪欲モード
貪欲なマッチング: 正規表現は一般に最大長まで一致する傾向があり、これがいわゆる貪欲なマッチングです。
非貪欲マッチング: 可能な限り少数の一致文字と結果を一致させます。
それでは、それを実践してみましょう
php preg_match_all の行数を使用します
次に、文字列コンテンツ内の 2 つのリンクを取り出す必要があります
Php コード
< ?php
2. $content='
これは明らかに私たちが望んでいることではありません。
その後、$play_pattern にもう 1 文字追加する限り、必要な情報を一致させることができます
Php コード
1。 $play_pattern = '/
結果は
Array
(
[0] => 配列
(
[0] => BD
[1] => DVD
)
[1] => 配列
(
[0] => /videos / 68759vod-play-id-68759-sid-0-pid-1.html
[1] => /videos/68759vod-play-id-68759-sid-0-pid-0.html
)
[ 2] => Array
(
[0] => BD
[1] => DVD
)
)
貪欲モードと非貪欲モードの違いは非常に大きいです。
このようなエラーは、HTMLでリストを正規化するときによく発生します。 preg_match_all を使用すると文字列全体が一致しますが、部分文字列の一致は無視されます。不正確な結果につながります。