我想验证用户输入。 用户只能输入四位数。我使用RegExp进行检查并查看奇怪的工作。 Javascript不明白\ d
var expr1 = new RegExp("^\s*[0-9]{4,4}\s*");
var year = "1984";
alert (expr1.test(year));
var expr2 = new RegExp("^\s*\d{4,4}\s*");
alert (expr2.test(year));
警告“真实”和“虚假”。 http://jsfiddle.net/HfHDu/
为什么?
答案 0 :(得分:6)
使用\
构造函数
RegExp
var expr1 = new RegExp("^\\s*[0-9]{4,4}\\s*");
var year = "1984";
alert (expr1.test(year)); //true
var expr2 = new RegExp("^\\s*\\d{4,4}\\s*");
alert (expr2.test(year)); //true
答案 1 :(得分:2)
尝试使用\\d
代替\d
。