0

次の形式の文字列のみを受け入れるアプリケーションを構築しています。

  1. 12345(数字のみ)
  2. 12345; 23456(;で区切られた2つ以上の数字)
  3. 12345-12367(-で区切られた数値の範囲)

javaスクリプトの正規表現は上記の形式のみを許可する必要があり、他の形式や記号は受け入れないようにする必要があります。誰かがこれの正規表現を思い付くことができますか?

4

4 に答える 4

1

これはあなたが必要とする正規表現です:/^\d+((;\d+)*|-\d+)?$/

(;\d+)*「;」で区切られた複数の数値をチェックします

-\d+範囲をチェックします

于 2012-07-31T14:04:34.857 に答える
1

試す

^[0-9]+([;-][0-9]+)?$

それはうまくいくはずです

[0-9]+1桁以上に一致[;-]a;またはaに一致-

(...)?オプションの一致です

^$文字列の開始と終了を固定します

于 2012-07-31T14:04:49.603 に答える
1

^ [0-9-;] {0,50} $

0〜9は数字のみを受け入れます

-; -と;のみを許可します。

{0,50}は50文字しか許可しません

于 2016-01-12T06:52:39.113 に答える
0

あなたが探している数の部分が毎回5桁であると仮定すると、以下はあなたが望むものと一致するはずです。

[0-9]{5}((;|-)[0-9]{5}){0,1}

異なる長さが必要な場合は、別の固定長または3〜5桁の文字列の{3,5}などの範囲で{5}を更新できます。リストされているspeperatorで3つ以上の数値をキャプチャできるようにする場合は、次を使用できます。

[0-9]{5}((;|-)[0-9]{5})*
于 2012-07-31T14:07:00.130 に答える