• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:utf-8環境で標準入力からの全角文字にマッチさせる方法)

utf-8環境で全角文字にマッチさせる方法

このQ&Aのポイント
  • utf-8環境で標準入力からの全角文字にマッチさせる方法について調査しています。
  • utf-8でフォーム処理のコードを書いていますが、euc-jpで動作していた全角文字の正規表現がutf-8環境では動作しません。
  • 単純な「$str =~ /あ/」のような書き方ではなく、別な指定方法が必要なのかを知りたいです。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

フォームから受け取った文字列が utf8 のバイト列だとすると Perl が内部で扱えるようにするためにデコードする必要があります。 ということでプログラムの最初の方で use Encode; をやっておいて、$value を $POST{$key} に代入する前に $value2 = decode('utf8', $value); のようにしましょう(で、$POST{$key} = $value2; のように代入する)。

qowop
質問者

お礼

___noboru___様、簡潔&的確なご返答ありがとうございます。 教えていただいた通りに処理してみたところ、解決しました! 感謝いたします。