我想要一个只匹配这些字符串的javascript regexp:
“XS1” “XS2” “XS3” ...等等到“xs24”
“S1” “S2” “S3” ...等一直到“s24”
“M1” “M2” “M3” ...等等到“m24”
“L1” “L2” “L3” ......等一直到“l24”
“XL1” “XL2” “XL3” ...等一直到“xl24”
E.g。 “xs20”应返回true,但“xs0”和“xs25”应返回false。
我试过
/^(xs|s|m|l|xl)[1-24]$/
但这并不是我想要的工作原因,因为“xs24”会返回false
答案 0 :(得分:2)
您正在使用
走上正轨/^(xs|s|m|l|xl)[1-24]$/
除了[1-24]
与1
到2
的范围或字符4
匹配。相反,你需要:
/^(xs|s|m|l|xl)(1?[1-9]|10|2[0-4])$/
这将匹配1
到9
之间的字符,有或没有1
前缀,10
或2
后跟0中的数字到4。