我正在尝试使用JavaScript中的正则表达式验证加拿大邮政编码。
这是我的代码:
var RegEx = new RegExp("/^[A-Za-z]\d[A-Za-z][ -]?\d[A-Za-z]\d/");
console.log(RegEx.test("G0A 1L0"));
即使邮政编码有效,我也会获得false
。我的正则表达式有什么问题?
答案 0 :(得分:1)
尝试在字符串的开头和结尾取出/
。
你还需要加倍\
个字符;否则,javascript会将字符串"\d"
解释为d
。
假设整个字符串必须匹配,您可能还希望在模式的末尾有一个行尾锚点。
var RegEx = new RegExp("^[A-Za-z]\\d[A-Za-z][ -]?\\d[A-Za-z]\\d$");