我正在尝试验证我从服务器端获得的数字序列。
我需要做的就是验证它们.到目前为止,我没有遇到任何问题,但是当我遇到regex
破裂的negative number of string type
时,我遇到了问题
正则表达式:
^[0-9]d*(.d+)?$
好吧,我之前尝试附加[-]
以确保负值有效,但我无法使其完美工作.
这里的例子:
Value My Output Expected
1234.5 - [true] - [true]
"1234.5" - [true] - [true]
"-1234.5" - [false] - [true]
-1234.5 - [false] - [true]
1234.5 - [true] - [true]
我正在函数中使用正则表达式代码并将这些值作为参数传递给它,并尝试获取布尔值 true/false 作为返回。
对于正则表达式测试器,请单击此处
对此的任何帮助将不胜感激。
你用什么样的黑魔法来制作^[0-9]d*(.d+)?$
匹配"1234.5"
,但这种模式应该可以完成这项工作:
^("?)-?d+(?:.d+)?1$
正则表达式101演示。
正则表达式的开头添加一个可选的-
作为
-?d+(.d+)?
正则表达式演示
由于负号是可选的,因此您需要使用"?"运算符。 试试这个:
^-?[0-9]d*(.d+)?$