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

$aという変数に100~9999のうち、任意の数値が1つ入るとします。
この$aの頭の3桁が100かそれ以下でしたら

if(substr($a,0,3) <= 100){各処理;}

で可能なのですが、例えば101~120、120~500、500~700、
などのように範囲でマッチングを行いたいのですが
どうもうまくいきません。
if(substr($a,0,3) =~ /[101-120]/)ではないですよね…。

この場合どのように判定させれば宜しいのでしょうか?
お詳しい方どうぞご教授お願い致します。

A 回答 (3件)

$wk=substr($a,0,3);


if(101<=$wk && $wk<=120){
print "101~120";
}
    • good
    • 0
この回答へのお礼

お早いご返答ありがとうございます。
こちらの方法でうまくいきました。
大変感謝です!

お礼日時:2005/10/06 13:56

if(substr($a,0,3)=~ /1(0[1-9]|1[0-9]|20)/){


print "101~120";
}
    • good
    • 0
この回答へのお礼

お早いご返答ありがとうございます。
こちらの方法でもうまくいきました。
もっと判定式の勉強をしたいと思います…。
貴重なお時間を割いていただきありがとうございます。

お礼日時:2005/10/06 13:59

条件をandで並べればよいのでは


if((substr($a,0,3) >= 101) && (substr($a,0,3) <= 120))
    • good
    • 0
この回答へのお礼

お早いご返答ありがとうございます。
こちらの方法でもうまくいきました。
elsifでつながっていくので、今回は#1様の方法で
いきたいと思います。
貴重なお時間を割いていただきありがとうございます。
大変感謝です!

お礼日時:2005/10/06 13:58

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