最速IPアドレスマッチ研修会 - JPerl Advent Calendar 2009 Perl に関するちょっとした Tips をのっけてみるよ。ちゃんと続くかな? もうすぐ2010年になるわけですが、携帯のサイトなどでアクセス元のIPアドレスがキャリアのIPアドレス帯域内にあるかどうかを確認したりすることがあると思います。 例えば、ローカルネットワークのアドレス(192.168.1.0/24)にマッチするかどうか $env->{REMOTE_ADDR} =~ s/^192\.168\.1\.(?:\d+)$/ なんて書くことがあると思います。ここであげたローカルのアドレスのような/24のIPアドレス帯域であれば簡単に正規表現を書くことが可能ですが、/25, /26 /23、/22などのCIDRは正規表現で表すことはなかなか難しいです。 また、携帯キャリアのアドレスであることを確認しよう