javascript正则表达式中的可选字符

时间:2010-05-04 21:19:09

标签: javascript regex

我正在尝试在javascript中构建一个正则表达式来检查3个字符,但其中2个是可选的。所以我有:

/^\w\w\w/i

我难以理解的是如何使用户不必输入最后两个字母,但如果他们这样做则必须是字母

2 个答案:

答案 0 :(得分:10)

您可以使用此正则表达式:

/^\w{1,3}$/i

量词{1,3}表示重复前面的表达式(\w)至少1次,最多3次。此外,$标记字符串的结尾,类似于字符串开头的^。请注意,\w不仅包含字符a - z及其大写对应项(因此您无需使用 i 修饰符来制作表达式不区分大小写)但也包括数字0 - 9和低位字符_

答案 1 :(得分:5)

像这样:

/^\w\w?\w?$/i

?将前面的表达式标记为可选。

$是固定正则表达式结束所必需的 如果没有$,它将匹配a12,因为它只匹配第一个字符。 $强制正则表达式匹配整个字符串。