Regexバリデータで検証を無効にする方法は、0の後に0を入力することはできません。

私はこのような検証番号のシナリオを持っています:

000...

0 が最初に入力されたため、これは許可されていません。

では、最初に 0 の後に入力した 0 を無効にする方法は、この 01000

0
00100 はどうでしょうか?それは許されますか?
追加された 著者 Tim Pietzcker,
実際それは実数値ではなく検証電話番号エリアです。私の国では、通常は「021」や「0632」や「020」のような居住者の電話番号エリアです。ありがとうございました。
追加された 著者 Yusan Susandi,
00100それは必須ではありません0100
追加された 著者 Yusan Susandi,

2 答え

だから、先行する0の1つを許可したいがそれ以上は許可したくない?

^(?!00)\d+$

00 で始まらない整数に一致します。単一の 0 を許可します(ただし、 0 を含まない番号も許可します)。

0 00 00000 以外の番号を許可する場合は、

^(?!0+$)\d+$

最初に 0 を1つ必要したい場合(多くのロケールの電話番号には意味があります)は、

^0(?!0)\d+$
4
追加された
それは仕事..しかし、私は最初の0の後に表示されないように秒に0を入力することはできませんユーザーが必要です。ありがとう
追加された 著者 Yusan Susandi,
^0[1-9][0-9]*$

これにより、

  1. '0'で始まる必要があります
  2. '0'以外の数字を含める必要があります
  3. 1番目と2番目の数字の後ろに数字だけが含まれます

さらに、電話番号のプレフィックス(2桁から4桁まで、最後の * を削除して {0-2} これはJavaで確実に動作しますが、他の形式でも有効かどうかはわかりませんが、似たようなものがあります)

^0[1-9][0-9]{0-2}$
0
追加された