【发布时间】:2016-04-19 05:11:59
【问题描述】:
我有以下字符串
“98225-2077 贝灵厄姆 WA”
我需要使用正则表达式来分隔邮政编码、城市和州。 团体应该返回 (98225-2077)(贝灵厄姆)和(西澳)。 State 是可选的,并且始终位于末尾,由两个大写字符组成。
我可以使用正则表达式过滤掉以下内容
邮政编码:(^([\S]+-)?\d+(-\d+)?) - 组[1]
城市:((^([\S]+-)?\d+(-\d+)?)\s)?(\S.*) = 组[5]。
是否可以有一个正则表达式使用相同的正则表达式过滤掉所有三个并在状态不存在的情况下返回空白?
【问题讨论】:
-
城市名称也可以是多个单词。例如新德里。
-
太好了...谢谢你现在告诉我这个
-
唯一的解析方式是正则表达式,根据设计存储在数据库中
-
不为“98225-2077 Bellingham”分组。请将其发布在答案部分,以便我将其标记为答案