0

验证英国邮政编码的可能重复 正则表达式

我需要一个接受以下格式的帖子代码的正则表达式语法

CR03JP
cr03jp
CR0 3JP
cr0 3jp

我现在拥有的是

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

接受CR0 3JP但拒绝cro3jp CR03JP

我也试过以下

/((GIR 0AA)|((([A-PR-UWYZ][0-9][0-9]?)|(([A-PR-UWYZ][A-HK-Y][0-9][0-9]?)|(([A-PR-UWYZ][0-9][A-HJKSTUW])|([A-PR-UWYZ][A-HK-Y][0-9][ABEHMNPRVWXY])))) [0-9][ABD-HJLNP-UW-Z]{2}))/i

如果这已经回答了,请指点我的链接

4

2 回答 2

2

问题是您需要在中间有 1 或 2 个空格

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

将其更改为{0,2},它还将接受没有空格的邮政编码。请参阅限制重复

i不区分大小写的匹配也需要修饰符,就像您在第二个正则表达式中使用它一样。

于 2013-07-24T06:42:56.667 回答
0

使用这个正则表达式

^ ?(([BEGLMNSWbeglmnsw][0-9][0-9]?)|(([A-PR-UWYZa-pr-uwyz][A-HK-Ya-hk-y][0-9][0-9]?)|(([ENWenw][0-9][A-HJKSTUWa-hjkstuw])|([ENWenw][A-HK-Ya-hk-y][0-9][ABEHMNPRVWXYabehmnprvwxy])))) ?[0-9][ABD-HJLNP-UW-Zabd-hjlnp-uw-z]{2}$
于 2013-07-24T06:41:59.930 回答