我有这样的代码,它看起来正常的,是很基本的,但我不能让它工作:的Javascript简单的正则表达式不起作用
function checkValid(elem){
var abc = elem.value;
var re = "/[0-9]/";
var match = re.test(abc);
alert(match);
}
它匹配0和9,而不是1到8 ,这里有什么问题?谢谢。
我有这样的代码,它看起来正常的,是很基本的,但我不能让它工作:的Javascript简单的正则表达式不起作用
function checkValid(elem){
var abc = elem.value;
var re = "/[0-9]/";
var match = re.test(abc);
alert(match);
}
它匹配0和9,而不是1到8 ,这里有什么问题?谢谢。
使用\ d匹配一个数字,使之成为正规expresison,而不是一个字符串:
var abc = elem.value;
var re = /\d/;
var match = re.test(abc);
alert(match);
re
是一个字符串,而不是RegExp对象。
你需要使用正则表达式的文字,而不是一个字符串,像这样:
var re = /[0-9]/;
而且,这会为一个包含若干个字符串中的任何地方的任何字符串返回true。
你可能想将其更改为
var re = /^[0-9]+$/;
尝试删除双引号...
var re = /[0-9]/;
谢谢!现在它工作:) – bah 2010-05-16 23:36:25