正则数组,正数或负数不在0之前或之前

时间:2017-09-28 10:43:10

标签: regex zero negative-number

我想创建一个过滤器,用于检查是否需要输入类型值 允许为负数和正数(没有' +' sugn)数字不在零之前。也允许负号本身 问题是我可以搜索负数,但我不知道如何添加条件以找到负数 我试图使用前瞻和整个机制,但我已经失败了 好的: - , - 10,-54,66,0,1 NOK:+,+ 1,-010,010

3 个答案:

答案 0 :(得分:2)

那是怎么回事:

^ start marker
- literally matches - sign
? makes it optional
([1-9]\d*) start by non zero digit followed by optional digits
([1-9]\d*)? the question sign makes it optional
|0 means or a single zero
$ end marker

Regex 101 Demo

说明:

{{1}}

答案 1 :(得分:0)

以下是正确的正则表达式:

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

它将涵盖所有测试用例

答案 2 :(得分:0)

使用此: ^-?(?:(?:[1-9]\d*|0))?$

Demo

从可选的-开始,然后确保第一个数字不是0,其余数字是尽可能多的数字。同时处理0的特殊情况。