Regex for numeric range from negative numbers?
我想使用正则表达式验证数字。条件是数字可以从任何负3位数值到正3位数值。但不能为零。
有人可以帮我获得正则表达式的条件吗?
在那里
它可以以负号开头,也可以不以负号开头,然后是1到9蚂蚁之间的数字,然后可以是任意数字的0到2。
1 | ^\-?[1-9]\d{0,2}$ |
更新:以下正则表达式也允许小数
1 | ^\-?[1-9]\d{0,2}(\.\d*)?$ |
假设您正在处理整数,并且您的数字未与其他文本混合,则可以尝试
1 | ^-?[1-9][0-9]{0,2}$ |
我同意Anon的观点,如果您有可预测的输入,则最好读取String并将其转换为int以进行比较。
最适合我的是:
^[+-]?[0-9]*$
我正在检查正则表达式数据类型以及正负数的范围。
此解决方案有效。
我将此与.NET System.Text.RegularExpressions一起使用,以匹配正或负十进制(数字)。
1 | (\d+|-\d+) |
我认为在上述所有输入中都允许-2-22,2-22,这是一个小错误。
1 | [\-]?[0-9]*$/ |
甚至更小:
1 | /^[\-]?\d*$/ |
我在Django URL中有一些关于正则表达式的实验,要求从负数到正数
1 | ^(?P<pid>(\-\d+|\d+))$ |
让我们专注于此