X-SEO

X-SEO > 技術メモ > Perl > 引数検査 > ひらがな検査

Perl

ひらがな検査

#===========================================================================*
# プログラム名  : ひらがな検査                                              *
# プログラムID  : CheckHiragana                                             *
# 使用例        : &CheckHiragana($_[0]);                                    *
#---------------------------------------------------------------------------*
# 入力引数[0]   : ふりがな                                                  *
# 入力引数[1]   : 文字コード                                                *
#---------------------------------------------------------------------------*
# 出力引数[0]   : エラー内容(無ければ異常なし)                            *
#===========================================================================*
sub CheckHiragana {
    #-------------------------------*
    # 変数宣言                      *
    #-------------------------------*
    my($RtnValue)   = $_[0];        # 戻り値用変数
    #-------------------------------*
    # 処理                          *
    #-------------------------------*
    if ($_[1] eq 'EUC') {
        $RtnValue   =~ s/(\xA4[\xA0-\xFF]|\xA1[\xA1-\xA3]|\xA1\xBC| )//g;
        return ($RtnValue) ? 'ひらがな以外の文字が含まれています' : undef;
    } elsif ($_[1] eq 'SJIS') {
        $RtnValue   =~ s/(\x82[\x9F-\xF1]|\x81[\x40-\x42]|\x81\x5B| )//g;
        return ($RtnValue) ? 'ひらがな以外の文字が含まれています' : undef;
    }
    #-------------------------------*
    return;
}