使用JavaScript,我只需要接受数字和逗号。
我使用的regex模式如下所示
var pattern = /^[-+]?[0-9]+(\.[0-9]+)?$/;
还有一些类似的问题只是部分地处理了这一点:
使用以下regex:
^[-+]?(?:[0-9]+,)*[0-9]+(?:\.[0-9]+)?$
参见regex演示
这里的基本变化是添加了(?:[0-9]+,)*
子模式,该子模式匹配:
^[-+]?[0-9]+(?:,[0-9]{3})*(?:\.[0-9]+)?$
这里,(?:,[0-9]{3})*
匹配逗号和3位数子字符串的0个或多个序列([0-9]{3}
)。{3}
是一个限制量词,与前面的子模式正好匹配3次。
是有效输入。 无效 有效 无效 无效(只有7个数字) 我尝试了,但它接受重复的数字
我试图验证数字1-8的逗号分隔列表。
我使用PHP的Filter Functions(具体FILTER_VALIDATE_REGEXP)来验证输入数据。我有一个选项列表,$输入变量可以从列表中指定许多选项。 选项是(不区分大小写): 所有 奖励 加入 促销 流 签入 verified_checkin $输入变量几乎可以有任何值的组合。可能的成功案例是: all(值可以是all,也可以是逗号分隔的其他值列表,但不能同时是两者) 我能想到
我试图验证一个逗号分隔的数字列表1-31唯一(不重复)。 20、15、3 我尝试但是它接受重复的数字
作为前言,我意识到还有其他关于逗号分隔数字的正则表达式的主题,但当我试图使用这些解决方案时,它们都不起作用。