jquery 文本框中非零逗号分隔数字的正则表达式

jquery regex for non zero comma separated numbers in textbox

我在 Jquery 中使用 ^\d+(,\d+)*$ 正则表达式来表示逗号分隔的数字,但他也允许使用数字 0。

即如果我写 0,123 或 123,0 或 465,586,0 或 857,0,546 那么它将通过,但根据我的要求,如果验证失败。

需要做什么样的改变才能在逗号分隔的数字中不允许使用 0?

你可以试试这个:

^[1-9]+(,\d+)*$

如果你想在逗号前有多个数字:

^[1-9]\d*(,\d+)*$

如果您不希望零匹配正则表达式,只需将 \d 替换为 [1-9]

我不清楚 10,123 是否会被允许(包含 字符 0 但显然 数字 在这里是 10)。如果 10 允许的,应该这样做:

^[1-9]\d*(,[1-9]\d*)*$

Debuggex Demo

否则:

^[1-9]+(,[1-9]+)*$

Debuggex Demo