正则表达式为3个大写字母,不多或少

时间:2013-04-23 12:37:40

标签: javascript regex

我正在尝试使用Javascript找到正则表达式,当以大写字母匹配3个字母时返回true,但它必须正好是3,而不是更多或更少

Correct:

ASD
WER
ERT

Wrong:

QeW
Q3W
QW
QWER

这是我的代码,但它也匹配4个字母的字符串

var r = /[A-Z]{3}/;
r.test("WEE");      //Should return "true"
r.test("WEER");     //Should return "false"

2 个答案:

答案 0 :(得分:5)

你只需要锚定你的正则表达式:

var r = /^[A-Z]{3}$/;

^匹配字符串的开头,$匹配字符串的结尾。这将强制整个字符串匹配要传递的正则表达式。

答案 1 :(得分:2)

您应该在正则表达式模式中指定字符串的开头^和结束$

var r = /^[A-Z]{3}$/;