|
>>4842 yuki そのページでも紹介していますが、文字単位でマッチさせるために http://www.din.or.jp/~ohzaki/perl.htm#JP_Match という工夫をしています。 PHP であれば mb 系の関数を使えば文字単位で切り出せると思いますが、 いわゆる機種依存文字に対応しているかどうかわからないのでまずは 試してみてください。対応していなければ、上記のようなやり方で 1文字ずつ取り出す必要があるかもしれません。 |
|
>>4843 68user様 ご助言ありがとうございます。 ご案内いただいたページを参考にして以下のように記述したところ 想定通りに動くことを確認できました。 $ascii = '[\x00-\x7F]'; $twoBytes = '[\x8E\xA1-\xFE][\xA1-\xFE]'; $threeBytes = '\x8F[\xA1-\xFE][\xA1-\xFE]'; $fradrs = $_POST['adrs']; $check = mb_convert_encoding($fradrs,'EUC-JP'); if (ereg("^($ascii|$twoBytes|$threeBytes)*(\x8E[\xA0-\xDF]|[\xAD\xF9\xFA\xFB\xFC][\xA1-\xFE])", $check)) { echo "マッチしました。\n"; mb系は私の未熟さゆえかうまく動作しませんでした…。 68user様、ありがとうございました。 |