有效的英国邮政编码正则表达式模式?
Posted
技术标签:
【中文标题】有效的英国邮政编码正则表达式模式?【英文标题】:Valid UK Postcode Regex Pattern? 【发布时间】:2014-01-06 21:56:58 【问题描述】:我得到了英国邮政编码的以下模式:
([A-PR-UWYZ0-9][A-HK-Y0-9][AEHMNPRTVXY0-9]?[ABEHMNPRVWXY0-9]? 1,2[0-9][ABD-HJLN-UW-Z]2|GIR 0AA)
谁能帮我分析一下?
【问题讨论】:
在 Windows regexbuddy 上花费 40 美元是物有所值的。我在 Linux/Mac 上用 wine 运行它就好了,因为它都押韵它一定很好;) 如果您使用的是 php,您可以查看non-regex solution。 【参考方案1】:Here是:
NODE EXPLANATION
----------------------------------------------------------------------
( group and capture to \1:
----------------------------------------------------------------------
[A-PR-UWYZ0-9] any character of: 'A' to 'P', 'R' to
'U', 'W', 'Y', 'Z', '0' to '9'
----------------------------------------------------------------------
[A-HK-Y0-9] any character of: 'A' to 'H', 'K' to
'Y', '0' to '9'
----------------------------------------------------------------------
[AEHMNPRTVXY0-9]? any character of: 'A', 'E', 'H', 'M',
'N', 'P', 'R', 'T', 'V', 'X', 'Y', '0'
to '9' (optional (matching the most
amount possible))
----------------------------------------------------------------------
[ABEHMNPRVWXY0-9]? any character of: 'A', 'B', 'E', 'H',
'M', 'N', 'P', 'R', 'V', 'W', 'X', 'Y',
'0' to '9' (optional (matching the most
amount possible))
----------------------------------------------------------------------
1,2 ' ' (between 1 and 2 times (matching the
most amount possible))
----------------------------------------------------------------------
[0-9] any character of: '0' to '9'
----------------------------------------------------------------------
[ABD-HJLN-UW-Z]2 any character of: 'A', 'B', 'D' to 'H',
'J', 'L', 'N' to 'U', 'W' to 'Z' (2
times)
----------------------------------------------------------------------
| OR
----------------------------------------------------------------------
GIR 0AA 'GIR 0AA'
----------------------------------------------------------------------
) end of \1
【讨论】:
【参考方案2】:debuggex.com 是一个非常有用的正则表达式调试资源:
Debuggex Demo
【讨论】:
这太棒了。谢谢!【参考方案3】:实际上,我更喜欢其他两个答案中的任何一个,而不是我即将列出的答案,但越多越好:
http://regex101.com/ - 将给出一个很好的细分/解释
http://www.regexper.com/ - 将生成一个可爱的铁路图:
以下答案也值得一读,以了解细微的替代/解释:
UK Postcode Regex (Comprehensive)
UK Postcode Regex
【讨论】:
这些都很棒,但是对于纯粹的数量,我会标记你是正确的。谢谢大家!以上是关于有效的英国邮政编码正则表达式模式?的主要内容,如果未能解决你的问题,请参考以下文章