Javascript简单regexp不';行不通
我有这个代码,它看起来不错,而且非常基本,但我无法让它工作:Javascript简单regexp不';行不通,javascript,regex,Javascript,Regex,我有这个代码,它看起来不错,而且非常基本,但我无法让它工作: function checkValid(elem){ var abc = elem.value; var re = "/[0-9]/"; var match = re.test(abc); alert(match); } 它匹配0和9,但不是1到8,这里怎么了?谢谢。re是一个字符串,不是RegExp对象 您需要使用正则表达式文字而不是字符串文字,如下所示: var re = /[0-9]/; 此外,对于字符串中
function checkValid(elem){
var abc = elem.value;
var re = "/[0-9]/";
var match = re.test(abc);
alert(match);
}
它匹配0和9,但不是1到8,这里怎么了?谢谢。
re
是一个字符串,不是RegExp对象
您需要使用正则表达式文字而不是字符串文字,如下所示:
var re = /[0-9]/;
此外,对于字符串中任何位置包含数字的任何字符串,这将返回true。
你可能想把它改成
var re = /^[0-9]+$/;
re
是字符串,不是RegExp对象
您需要使用正则表达式文字而不是字符串文字,如下所示:
var re = /[0-9]/;
此外,对于字符串中任何位置包含数字的任何字符串,这将返回true。
你可能想把它改成
var re = /^[0-9]+$/;
尝试删除双引号
var re = /[0-9]/;
尝试删除双引号
var re = /[0-9]/;
使用\d匹配数字并使其成为常规表达式,而不是字符串:
var abc = elem.value;
var re = /\d/;
var match = re.test(abc);
alert(match);
使用\d匹配数字并使其成为常规表达式,而不是字符串:
var abc = elem.value;
var re = /\d/;
var match = re.test(abc);
alert(match);