1

正規表現を使用して数字を一致させようとしています:

  1. 間にハイフンを含めることができます
  2. ハイフンとコンマの両方を含めることができます

試した:

[0-9-]+    
[0-9]+[-]?:[-N]?[0-9]

有効な入力例:

60-55-1
79-0,2,4,6,8,10,12,14,16,18,20,22,24,26
4

4 に答える 4

6

ということは、[0-9,-]+例えば?

于 2012-07-16T01:54:51.317 に答える
2

Kolinkの回答(質問に関する限り正しかった)に基づいて構築し、,2379-が無効であると仮定します:

^[0-9][0-9,-]*-[0-9,-]*[0-9]$

これには、文字列が数字で始まり、任意の数の有効な文字の後にハイフンが続き、次に任意の数の有効な文字が含まれ、数字で終わる必要があります。これは単純な BRE (ERE や PREG ではない) であるため、すべての正規表現パーサーで動作することに注意してください。

私が言及したサンプル実際に有効である場合は、そう言ってください。

于 2012-07-16T03:17:29.590 に答える
0
(-)?[0-9]+((,|-)[0-9]+)*

これはあなたのニーズを満たすことができると思います。

于 2012-07-16T02:36:07.040 に答える
0

これはあなたが探しているものと一致します

[0-9]+(?:[-,]?[0-9]+)*

任意の数字パターンの後にダッシュとコンマを含むオプションの文字列が続き、その後にさらに数字が続きます。

于 2012-07-16T02:07:40.530 に答える