要旨
^
と $
の場合
[1] pry(main)> regex = /^https:\/\/.+$/ => /^https:\/\/.+$/ [2] pry(main)> 'javascript:exploitcode() /* https://safesite.example.com */'.scan(regex) => ["https://safesite.example.com"]
\A
と \z
の場合
[3] pry(main)> regex2 = /\Ahttps:\/\/.+\z/ => /\Ahttps:\/\/.+\z/ [4] pry(main)> 'javascript:exploitcode() /* https://safesite.example.com */'.scan(regex2) => []
詳細
詳細は下記の記事に譲る。かいつまむと、Rubyはデフォルトで複数行マッチなので、 ^
$
だと文中の行頭・行末もマッチしてしまう。