2009-11-19 59 views
0

如何匹配其中前三个字符是字母后跟“ - ”而不是2个字母的表达式。javascript中的匹配模式

例如, ABC-XY

在此先感谢。

+0

这句话几乎可以说明你的答案....如果你知道正则表达式。 – mpen 2009-11-19 06:33:36

回答

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}$/正则表达式查找:

  • 字符串的开头^
  • 三个大写字母[A-Z]{3}
  • 破折号字面上-
  • 另外两个大写字母[A-Z]{2}
  • 和字符串$

如果你想匹配的字母数字字符的结束,你可以使用\w而不是[A-Z]

资源:

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

如果您还想允许小写,改变A-ZA-Za-z

0
/^[a-zA-Z]{3}-[a-zA-Z]{2}$/ 
0
/\w{3}-\w{2}/.test("ABC-XY") 
true 

它将匹配虽然A-ZA-Z_。