TOP - Perl - 特殊変数 - $+

直前のパターンマッチで一番最後のかっこで囲まれた部分の文字列が格納されます。

(例1)
$_ = "123-456-7890";

if (/(\d*)-(\d*)-(\d*)/)
{
    print "電話番号(下4桁) : $+\n";        # 直前のマッチで一番最後のかっこで囲まれた部分の文字列が表示される
}
実行結果
電話番号(下4桁) : 7890

(例2)
$_ = "123-456-7890";

if (/(\d*)-(\d*)-(\d*)/)
{
    if (/(\d{3})-(\d{3})/)
    {
        print "$+\n";        # 直前に成功した/(\d{3})-(\d{3})/で最後のかっこで囲まれた部分が表示される
    }
}

print "$+\n";                # 直前に実行された結果は/(\d{3})-(\d{3})/の結果となるが、
                             # ブロックが一段内側になるため表示されない
実行結果
456
7890


Copyright(C) 2006-2011 CLAYPOT. All Rights Reserved.