数字的正则表达式,但没有“ - ”

时间:2017-10-12 17:29:03

标签: regex

需要匹配正数和负数的正则表达式,但对于字符串匹配为“ - ”。

我的正则表达式不起作用:

^-?[0-9]$

这个正则表达式适用于“ - ”,但我需要这样她才是假的。

-123123; //true
12321; //true
-; //false
asdasd; //false

请帮帮我。

1 个答案:

答案 0 :(得分:1)

您至少需要一位数字,所以

^-?\d+$

应该做的伎俩

或者这可能更好

 ^(0|-?[1-9]+\d*)$

第二个表达式更好,因为它可以防止数字带有大量带零前缀的数字(例如00000001)以及-0