0

私はphpフォームを作っています。PHP で数値コンテンツを検証したい。私はそれを行うためにこのPHPコードを使用しています。

if (!preg_match('/^[0-9]*$/',$id)) 
{
    $id_Err = "Only numbers allowed";
}

しかし、このコードでは数字が 0 から始まることを許可しています。

ex:- 01,02,.....,0100...

次のようなnuberを許可するだけです

1,2,....100,...

この正規表現はどのように書けばよいのでしょうか?

4

1 に答える 1

1

この正規表現は機能するはずです。

if (!preg_match('/^[1-9][0-9]*$/',$id)) 
{
    $id_Err = "Only numbers allowed";
}

正規表現が からの数字に一致し1-9、次に 0 以上の任意の数字に一致するように強制します。これは、ゼロより大きい正の整数を監視します。

単一のゼロも許可する場合:

if (!preg_match('/^(?:[1-9][0-9]*)$|^0$/',$id)) 
{
    $id_Err = "Only numbers allowed";
}
于 2013-09-26T04:53:40.517 に答える