如何匹配包含完全“3位数和3个字母”的字符串中的单词?
e.g。 100BLA
var regex = ?;
var string = "word word 100BLA word";
desiredString = string .match(regex);
答案 0 :(得分:30)
\d
匹配数字
[a-zA-Z]
匹配一封信
{3}
是恰好匹配3次重复的量词
^
锚定以匹配字符串的开头
$
定位以匹配字符串的结尾
因此,如果您使用所有这些新知识,您将会得到这样的正则表达式:
^\d{3}[a-zA-Z]{3}$
由于输入示例在我写完答案后发生了变化,因此更新:
如果您的单词是较大字符串的一部分,则不需要锚点^
和$
,而是必须使用word boundaries \b
。
\b\d{3}[a-zA-Z]{3}\b
答案 1 :(得分:2)
INITIAL(不完整)
var regex = /[0-9]{3}[A-Za-z]{3}/;
编辑1(不完整)
var regex = /[0-9]{3}[A-Za-z]{3}\b/; // used \b for word boundary
编辑2(正确)
var regex = /\b[0-9]{3}[A-Za-z]{3}\b/; // used \b at start and end for whole word boundary