为了账号安全,请及时绑定邮箱和手机立即绑定

如何在此正则表达式中包含负十进制数?

如何在此正则表达式中包含负十进制数?

缥缈止盈 2019-10-09 15:38:31
如何通过此正则表达式匹配负数?这个正则表达式可以很好地使用正值,但我希望它也允许负值,例如-10,-125.5等。^[0-9]\d*(\.\d+)?$谢谢
查看完整描述

3 回答

?
慕无忌1623718

TA贡献1744条经验 获得超4个赞

您应该在开头添加一个可选的连字符,方法是添加-?(?是一个表示一个或零次出现的量词):


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

我用以下值在Rubular中验证了它:


10.00

-10.00

两者均符合预期。


查看完整回答
反对 回复 2019-10-09
?
慕妹3146593

TA贡献1820条经验 获得超9个赞

一些正则表达式示例:


正整数:


^\d+$

负整数:


^-\d+$

整数:


^-?\d+$

正数:


^\d*\.?\d+$

负数:


^-\d*\.?\d+$

正数或负数:


^-?\d*\.{0,1}\d+$

电话号码:


^\+?[\d\s]{3,}$

电话代码:


^\+?[\d\s]+\(?[\d\s]{10,}$

1900-2099年:


^(19|20)[\d]{2,2}$

日期(年月日,年/月/日等):


^([1-9]|0[1-9]|[12][0-9]|3[01])\D([1-9]|0[1-9]|1[012])\D(19[0-9][0-9]|20[0-9][0-9])$

IP v4:


^(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]){3}$


查看完整回答
反对 回复 2019-10-09
?
隔江千里

TA贡献1906条经验 获得超10个赞


(^-?0\.[0-9]*[1-9]+[0-9]*$)|(^-?[1-9]+[0-9]*((\.[0-9]*[1-9]+[0-9]*$)|(\.[0-9]+)))|(^-?[1-9]+[0-9]*$)|(^0$){1}

我尝试使用此数字并正常工作:


-1234454.3435

-98.99

-12.9

-12.34

-10.001

-3

-0.001

-000

-0.00

0

0.00

00000001.1

0.01

1201.0000001

1234454.3435

7638.98701


查看完整回答
反对 回复 2019-10-09
  • 3 回答
  • 0 关注
  • 603 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信