title
2014年
7月
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
AV | Car | Game | Internet | IT | Linux | Movie | other | PC | RC | Reading | SmartPhone | Web


2014-07-09 判別

_ [Web]Perl で半角のみかどうか、を判別したかった.

日本語、Shift-JIS や EUC-JP、UTF-8 と色々ヤヤコシイのだが、今回は「半角だけなのかどうか」が基準だったので、以下の手法を用いた.

$buf =~ s/[\x00-x7F]//g;

要は 1byte文字コードを除去 した。 半角カナも、であれば [\x8E\xA1-\xFE] を使えば、ASCII文字を範囲にできる.

$buf が空になれば、半角「だけ」だったとなる。 そうで無ければ全角が含まれている.

UTF-8 を設定する、Encode モジュールを使う、などなど「環境」が要る系の解説が多いが、変換ではなく判断だけなら、こーゆーお手軽なのもありだよネ!



Links
  • Smoug Mail
    無料/有料 の、メールアドレス発行サービス。
    スパムフィルタ、アンチウィルス標準搭載!
«前の日記(2014-07-08) 最新 次の日記(2014-07-10)»