dポイントプレゼントキャンペーン実施中!

perl初心者の私にどうかご教授くださいませ。
今、メールフォームを作っておりまして、
FAX番号の欄は半角数字以外の入力でエラーがでるようにし、空欄の場合はエラーとしない。という条件を作りたいのです。つまり、「空欄でもいいけど、入力するときは半角数字にしてね」としたいのです。ところが自分の作ったプログラムでは動作してくれないんです。現状だと、半角数字以外でも通ってしまうのです。先輩の皆様、どこをなおせば良いか分かる方がおりましたらどうかご教授くださいませ。

if (($in{'FAX番号'} =~ s/\s//g ne "" ) && $in{'FAX番号'} !~ /\d{3}-?\d{3}-?\d{4}$/) { &error("FAX番号は半角数字入力してください"); }

A 回答 (1件)

$in{'FAX番号'} =~ s/\s//g ne ""


↑こんな書き方できません。

if($in{'FAX番号'} ne "" && $in{'FAX番号'} !~ /^\d{2,4}\-?\d{2,4}\-?\d{4}$/){~略~}
でいいでしょう。
    • good
    • 0
この回答へのお礼

Etherskyさん本当にありがとうございました!バッチリ動作しました。
今日初めてこのサイトを使わさせてもらいましたが、まさかこんなに早く解答してもらえるなんて思ってませんでした。本当に感謝します!

お礼日時:2005/05/01 01:34

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!