Top > Perlあれこれ > 正規表現パターン
Everything is expanded.Everything is shortened.
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 
 
 
 
 
-
|
-
|
!
 
 
use Encode;
#全てASCII文字か?
#Perlの正規表現で、渡された文字列が全てASCII文字かチェックします。(UTF-8向け) 
#Perl 正規表現 ASCII文字 UTF8
$str = " abcdefghijklmnopqrstuvwxyz!#$&'()[]@";
if ( $str =~ /^[\x20-\x7E]+$/ ) {
  print encode('shift-jis', decode('utf-8', "すべてがASCIIである\n"));
}else{
  print encode('shift-jis', decode('utf-8', "すべてがASCIIでない\n"));
}
#↓
#"全てASCII文字である"
Everything is expanded.Everything is shortened.
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 
 
 
 
 
-
|
-
|
!
 
 
 
use Encode;
#全て全角ひらがなか?
#Perlの正規表現で、渡された文字列が全て全角ひらがなかチェックします。(UTF-8向け) 
#Perl 正規表現 全角ひらがな UTF8
$str = "あいうえおわいうえおん";
if ( $str =~ /^(?:\xE3\x81[\x81-\xBF]|\xE3\x82[\x80-\x93])+$/ ) {
    print encode('shift-jis', decode('utf-8', "すべてが全角ひらがなである\n"));
} else {
    print encode('shift-jis', decode('utf-8', "すべてが全角ひらがなではない\n"));
}
#↓
#"すべて全角ひらがなである"
Everything is expanded.Everything is shortened.
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 
 
 
 
 
-
|
-
|
!
 
 
 
use Encode;
#全て全角カタカナか?
#Perlの正規表現で、渡された文字列が全て全角カタカナかチェックします。(UTF-8向け) 
#Perl 正規表現 全角カタカナ UTF8
$str = "アイウエオワイウエオン";
if ( $str =~ /^(?:\xE3\x82[\xA1-\xBF]|\xE3\x83[\x80-\xB6])+$/ ) {
    print encode('shift-jis', decode('utf-8', "すべてが全角カタカナである\n"));
} else {
    print encode('shift-jis', decode('utf-8', "すべてが全角カタカナではない\n"));
}
#↓
#"すべて全角カタカナである"
Everything is expanded.Everything is shortened.
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 
 
 
 
 
-
|
-
|
!
 
 
 
use Encode;
#全て半角カタカナか?
#Perlの正規表現で、渡された文字列が全て半角カタカナかチェックします。(UTF-8向け) 
#Perl 正規表現 半角カタカナ UTF8
$str = "。アイウエオカキクケコサシスセソタチツテトナニヌネノハイフヘホマミムメモラリルレロヤユヨワン゚";
if ( $str =~ /^(?:\xEF\xBD[\xA1-\xBF]|\xEF\xBE[\x80-\x9F])+$/ ) {
    print encode('shift-jis', decode('utf-8', "すべてが半角カタカナである\n"));
} else {
    print encode('shift-jis', decode('utf-8', "すべてが半角カタカナではない\n"));
}
#↓
#"すべて半角カタカナである"
Everything is expanded.Everything is shortened.
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 
 
 
 
 
-
|
-
|
!
 
 
 
use Encode;
#全て全角ASCIIか?
#Perlの正規表現で、渡された文字列が全て全角ASCIIかチェックします。(UTF-8向け) 
#Perl 正規表現 全角ASCII UTF8
$str = "ABCDEFGHIJK1234567890!#$";
if ( $str =~ /^(?:\xEF\xBC[\x81-\xBF]|\xEF\xBD[\x80-\xA0])+$/ ) {
    print encode('shift-jis', decode('utf-8', "すべてが全角ASCIIである\n"));
} else {
    print encode('shift-jis', decode('utf-8', "すべてが全角ASCIIではない\n"));
}
#↓
#"すべて全角ASCIIである"
Everything is expanded.Everything is shortened.
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 
 
 
 
 
-
|
-
|
!
 
 
 
use Encode;
#全て全角文字か?
#Perlの正規表現で、渡された文字列が全て全角文字かチェックします。(UTF-8向け) 
#Perl 正規表現 全角文字 UTF8
$str = "ABCDEFXYZあいうえおカキクケコ@!+*_";
if ( $str !~ /(?:\xEF\xBD[\xA1-\xBF]|\xEF\xBE[\x80-\x9F])|[\x20-\x7E]/ ) {
    print encode('shift-jis', decode('utf-8', "すべてが全角である\n"));
} else {
    print encode('shift-jis', decode('utf-8', "すべてが全角ではない\n"));
}
#↓
#"すべて全角である"
Everything is expanded.Everything is shortened.
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 
 
 
 
 
-
|
-
|
!
 
 
 
use Encode;
#渡された文字列に非ASCII文字があるか?
#Perlの正規表現を使用して、渡された文字列に非ASCII文字があるかチェックします。(UTF-8向け) 
#Perl 正規表現 非ASCII文字 UTF8
$str = " abcdefghijklmnopqrstuvwxyz!#$&'()[]@";
if ( $str =~ /[^\x20-\x7E]/ ) {
    print encode('shift-jis', decode('utf-8', "文字列にASCII文字でない文字が存在する\n"));
} else {
    print encode('shift-jis', decode('utf-8', "文字列にASCII文字でない文字が存在しない\n"));
}
#↓
#"文字列にASCII文字でない文字が存在しない"
Everything is expanded.Everything is shortened.
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 
 
 
 
 
-
|
-
|
!
 
 
 
use Encode;
#渡された文字列に非半角英字があるか?
#Perlの正規表現を使用して、渡された文字列に非半角英字があるかチェックします。(UTF-8向け) 
#Perl 正規表現 非半角英字 UTF8
$str = "abcdefghijklmnopqrstuvwxyz";
if ( $str =~ /[^A-Za-z]/ ) {
    print encode('shift-jis', decode('utf-8', "文字列に半角英字でない文字が存在する\n"));
} else {
    print encode('shift-jis', decode('utf-8', "文字列に半角英字でない文字が存在しない\n"));
}
#↓
#"文字列に半角英字でない文字が存在しない"
Everything is expanded.Everything is shortened.
  1
 
Everything is expanded.Everything is shortened.
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 
 
 
 
 
-
|
-
|
!
 
 
 
use Encode;
#文字列に半角カタカナが存在するか?
#Perlの正規表現を使用して、渡された文字列に半角カタカナがあるかチェックします。(UTF-8向け) 
#Perl 正規表現 半角カタカナ UTF8
$str = "aaaaアあああああ";
if ( $str =~ /(?:\xEF\xBD[\xA1-\xBF]|\xEF\xBE[\x80-\x9F])/ ) {
    print encode('shift-jis', decode('utf-8', "文字列に半角カタカナが存在する\n"));
} else {
    print encode('shift-jis', decode('utf-8', "文字列に半角カタカナが存在しない\n"));
}
#↓
#"文字列に半角カタカナが存在する"
Everything is expanded.Everything is shortened.
  1
 
Everything is expanded.Everything is shortened.
  1
 
Everything is expanded.Everything is shortened.
  1
 

リロード   新規 編集 凍結解除 差分 添付 複製 名前変更   ホーム 一覧 単語検索 最終更新 バックアップ リンク元   ヘルプ   最終更新のRSS
Last-modified: 2012-08-08 (水) 23:25:25 (2928d)