英国邮政编码的JavaScript正则表达式

时间:2012-05-22 14:54:06

标签: javascript regex

我一直在使用这个正则表达式在我的联系表单中验证英国邮政编码,它运行正常:

/^([a-zA-Z]){1}([0-9][0-9]|[0-9]|[a-zA-Z][0-9][a-zA-Z]|[a-zA-Z][0-9][0-9]|[a-zA-Z][0-9]){1}([ ])([0-9][a-zA-z][a-zA-z]){1}$/

但是我现在需要对其进行修改,以便在有或没有空格的情况下进行验证,例如GL50 1HX或GL501HX

有一个简单的解决方案吗?

3 个答案:

答案 0 :(得分:4)

以下是与英国邮政编码匹配的正则表达式:

^([A-PR-UWYZ0-9][A-HK-Y0-9][AEHMNPRTVXY0-9]?[ABEHMNPRVWXY0-9]? {0,2}[0-9][ABD-HJLN-UW-Z]{2}|GIR ?0AA)$

http://regexlib.com/REDetails.aspx?regexp_id=260&AspxAutoDetectCookieSupport=1

答案 1 :(得分:3)

要在正则表达式中指定可选空格,请在其后面添加问号。

示例:

^[A-Z]{2}\d{2} ?\d[A-Z]{2}$

问号是{0,1}限定符的缩写形式,即零或一次:

^[A-Z]{2}\d{2} {0,1}\d[A-Z]{2}$

答案 2 :(得分:-1)

将空格放在条件正则表达式exp:[ ]