0 0

正则表达式问题5

求大神帮我看看这个正则是什么意思?匹配什么样的数据
"/^(\-)?[0-9]+(\.[0-9]+)?$/"
麻烦给个例子,什么样的数据是对的,什么样是错的
2014年10月15日 19:20

1个答案 按时间排序 按投票排序

0 0

采纳的答案

这个是匹配整数或小数的。
1.可以带负号(-)的整数,不可以带正好(+):
-123, -0, 0, 1, 23, 232323232323

2.带小数点的小数
0.1,  12.34等
只带小数点不带小数部分是不可以的,比如1.是不可以的。

解析:
^(\-)?[0-9]+(\.[0-9]+)?$
1. ^表示从一个表达式的开头部分开始匹配,最后的$表示一直匹配到表达式的最后。
2. (\-)?表示允许带负号
3. [0-9]+表示至少一个0-9的数字。
4. (\.[0-9]+)表示小数点和后面的数字式绑定的,如果有小数点,则必须至少有一个数字在后面。
5.(\.[0-9]+)?表示小数部分可有可无。

感兴趣的话我博客里有正则表达式的文章,仅供参考。

2014年10月15日 20:38

相关推荐

Global site tag (gtag.js) - Google Analytics