Javascript - RegEx匹配任意数字,包括无穷大,负数和e +/-数字

时间:2014-10-18 09:27:20

标签: javascript regex numbers

所以我需要在Javascript中使用RegExp来检查任何数字:

2 -> true
3.14 -> true
2. -> true
.2 -> true
0 -> true

它也适用于这些:

Infinity -> true
-Infinity -> true
-0 -> true
-22 -> true
2e-3 -> true
5e-14 -> true
3e+2 -> true
8e2 -> true

d只允许正整数,这远远不是我需要的RegExp,而且我对RegExp一点也不擅长,那么这样做最有效的RegExp是什么?

1 个答案:

答案 0 :(得分:2)

您可以使用此正则表达式:

[-+]?(?:(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?|Infinity)

RegEx Demo