正規表現における貪欲な表現。 。
PHP コード
<!--
Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/
-->
$a = '<b>aaa</b><b>bbb</b><b>ccc</b>';
$pattern1 = '/<b>.*?<\/b>/';
$pattern2 = '/^<b>.*?<\/b>$/';
ログイン後にコピー
$pattern1 と $pattern2 を使用して $a と一致させます。最初のものは '
aaa' と一致します。 ;b>bbb'、'
ccc' これら 3 つの
ですが、$pattern2 を使用すると '
aaabbb< ;/b>ccc'、つまり .* の貪欲モードが機能しないのはなぜですか? ? ?
ありがとうございます!
-----解決策---------
末尾文字 $ を追加したため、文字列の末尾まで一致します。
$ が削除されても、^ を追加したため、最初の aaa のみと一致します。