スマートフォンを判別する

日本で販売されているスマートフォンは以下の判定でつかまえられるだろうか。

my $is_smartphone = 0;

if ( $self->{_user_agent} =~ /
    Android.+Mobi|
    iPhone|iPod|
    Windows\ Phone|
    BlackBerry|
    M1000|F1100|TS01|SC-01B|
    HT0[12]A|T-01[AB]|
    (?:S01SH|S1[12]HT|S2[12]HT)|
    (?:WS(?:00[347]|011|02[07])SH)|
    (?:X(?:0[12]T|02NK|01SC|0[12345]HT))
    }ix )
{
    $is_smartphone = 1;
}

print 'is_smartphone=[', $is_smartphone, "]\n";