半角英字のみかチェックする
何らかの事情により、半角の英語つまりアルファベット(a~z、A~Z)のみかをチェックしたい場合、どのようにしたら良いだろうか?これも正規表現で解決できる。
;#
;#入力チェック
;#
if( isAlpha('123') ){
print "アルファベットだけ\n";
}
else{
print "アルファベット以外\n";
}
#---------------------------------------
#英字のみかチェックする
#---------------------------------------
sub isAlpha{
my $str = shift || return(undef);
#-- 英字のみか --#
if( $str =~ /^[a-zA-Z]{1,}$/ ){
return(1);
}
#-- 英字以外が含まれる --#
else{
return(0);
}
}
「{1,}」は1以上という意味の量指定子を用いているが、「[a-zA-Z]+」などのように「+」で表現しても良い。ただ個人的には見た瞬間に理解できる方がオススメ。
小文字だけ、大文字だけといったチェックにしたい場合には、[a-zA-Z]の部分を[a-z]ないし[A-Z]とすれば良い。
■関連ページ
・半角数字だけかチェックする
・半角英数字のみかチェックする
・半角数字を全角数字へ変換する
・全角数字を半角数字へ変換する
・全角カナを半角カナへ変換する
・半角カナを全角カナへ変換する
・半角カナが含まれているかチェックする

