Rubyを学習中です。
HTMLのリンク(a.html)を抽出する場合、下記の正規表現で抽出できますが、なぜ ? が必要なのか理解できていません。
Ruby
1$ irb 2> str='<a href="a.html">First Link</a><a href="b.html">Second Link</a>' 3> str[%r!<a href="(.+?)">(.+?)</a>!,1] 4 => "a.html"
(.+?) のそれぞれの意味は認識しています。
. は、任意の文字
- は、1回以上繰り返し
? は、直前の文字を0回または1回繰り返し
しかし、なぜ ? が必要なのかが分かりません。
確かに、? を指定しないと、想定のリンクは抽出できません。
どなたか、わかりやすく説明いただけないでしょうか?
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/05/29 03:49