在javascript中匹配模式

时间:2009-11-19 06:21:06

标签: javascript regex

我如何匹配一个表达式,其中前三个字符是字母后跟一个“ - ”而不是两个字母。

例如。 ABC-XY

提前致谢。

4 个答案:

答案 0 :(得分:3)

如果您只想测试字符串是否与模式匹配,请使用测试方法:

function isValid(input) {
 return /^[A-Z]{3}-[A-Z]{2}$/.test(input);
}

isValid("ABC-XY"); // true
isValid("ABCD-XY"); // false

基本上/^[A-Z]{3}-[A-Z]{2}$/ RegExp会查找:

  • 字符串^
  • 的开头
  • 三个大写字母[A-Z]{3}
  • 字面意思-
  • 另外两个大写字母[A-Z]{2}
  • 字符串$
  • 的结尾

如果您想匹配字母数字字符,可以使用\w代替[A-Z]

资源:

答案 1 :(得分:1)

[A-Z]{3}-[A-Z]{2}

如果您还想允许小写,请将A-Z更改为A-Za-z

答案 2 :(得分:0)

/^[a-zA-Z]{3}-[a-zA-Z]{2}$/

答案 3 :(得分:0)

/\w{3}-\w{2}/.test("ABC-XY")
true

它会匹配A-Za-z_。