如何使用正则表达式确保3个字符后的空格

时间:2011-08-24 08:58:29

标签: javascript jquery regex jquery-validate

实际上,我想使用jQuery验证验证加拿大邮政编码表单字段。

所以我添加以下方法来验证加拿大邮政编码

//Canada zipcode validation methode 
    jQuery.validator.addMethod("canadazipRegex", function(value, element) {
            return this.optional(element) || /^[ABCEGHJ-NPRSTVXY]{1}[0-9]{1}[ABCEGHJ-NPRSTV-Z]{1}[ ]?[0-9]{1}[ABCEGHJ-NPRSTV-Z]{1}[0-9]{1}$/i.test(value);
    }, "<br>You must enter your postal code in this format: A#A  #A#");

使用此正则表达式

  

^ [ABCEGHJ-NPRSTVXY] {1} [0-9] {1} [ABCEGHJ-NPRSTV-Z] {1} [   ] [0-9] {1} [ABCEGHJ-NPRSTV-Z] {1} [0-9] {1} $

该字段应仅允许此格式

A#A #A#

喜欢:A1A 1A1

不喜欢:A1A1A1

那么,如何确保3个字符后的空格。

我对正则表达式不太满意。如果你给我很好的教程链接也赞赏

提前致谢!

2 个答案:

答案 0 :(得分:4)

不要让空格可选:

^[ABCEGHJ-NPRSTVXY][0-9][ABCEGHJ-NPRSTV-Z]\s[0-9][ABCEGHJ-NPRSTV-Z][0-9]$

此外,无需使用量词{1}

答案 1 :(得分:0)

\ x20匹配空格。尝试使用