开发者

Javascript simple regexp doesn't work

I have this code, it looks alright and is really basic,开发者_运维知识库 but i can't make it work:

function checkValid(elem){

 var abc = elem.value;

 var re = "/[0-9]/";

 var match = re.test(abc);

 alert(match);
}

It matches 0 and 9, but not 1 to 8, what's wrong here? Thanks.


re is a string, not a RegExp object.

You need to use a regex literal instead of a string literal, like this:

var re = /[0-9]/;

Also, this will return true for any string that contains a number anywhere in the string.
You probably want to change it to

var re = /^[0-9]+$/;


Try removing the double quotes...

 var re = /[0-9]/;


Use \d to match a number and make it a regular expresison, not a string:

var abc = elem.value;
var re = /\d/;
var match = re.test(abc);
alert(match);
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜