正規表現の文脈における「lazy」と「greedy」はどういう意味ですか? 質問する

正規表現の文脈における「lazy」と「greedy」はどういう意味ですか? 質問する

これら 2 つの用語をわかりやすく説明すると何になりますか?

ベストアンサー1

貪欲はできるだけ多く消費する。http://www.regular-expressions.info/repeat.htmlHTML タグを と一致させようとする例を見てみましょう<.+>。次のようなものがあるとします。

<em>Hello World</em>

<.+>(は任意の非改行文字.を意味し、は1 つ以上のを意味する) は と のみに一致すると思われるかもしれませんが、実際には非常に貪欲であり、最初から最後まで一致します。つまり、期待どおりに一致しないことになります。+<em></em><><em>Hello World</em>

これを遅延 ( <.+?>) にすると、これを防ぐことができます。?の後にを追加することで、 をできるだけ少ない回数+繰り返すように指示し、 が最初に出現するところで一致を停止します。>

ダウンロードすることをお勧めします正規表現は、正規表現を調べるのに役立つ優れたツールです。私はいつもこれを使用しています。

おすすめ記事