如何在javascript中测试字符串是否包含带正则表达式的数字?

时间:2015-02-26 00:44:12

标签: javascript regex

我正在尝试

function hasANumber(value) {
    return /^.*[0-9]*.*$/.test(value);
}

我哪里错了?

3 个答案:

答案 0 :(得分:1)

正则表达式中的

*表示零或更多

您应该使用+,这意味着一个或多个,如:

/^.*[0-9]+.*$/

虽然这可以简化为:

/[0-9]+/

答案 1 :(得分:1)

对于这种情况,只需\d即可。

> /\d/.test('foo')
false
> /\d/.test('fo1o')
true
你的正则表达式中的

[0-9]*匹配一个数字零次或多次,所以它也会允许没有数字的字符串。

答案 2 :(得分:0)

这是编写正则表达式的正确形式:

 \d+$