【发布时间】:2012-03-12 22:33:01
【问题描述】:
虽然我知道匹配街道地址永远不会是完美的,但我希望创建几个在大多数情况下都会接近的正则表达式语句。
我正在尝试突出显示一个地址。我对正则表达式很烂,我试图接近,但有人可以帮助我了解如何让它变得更好吗?
字符串:
早上 6 点 - 晚上 11 点,Palma Sola 小学,6806 Fifth Ave NW, Bradenton, FL 34209 快来看看 dsfsd sa fsa fasdf asfsds 5001 west 你妈妈不住在这里,我的 2005 福特游侠,
正则表达式 1:
/\s+(\d{2,5}\s+)(?![a|p]m\b)(([a-zA-Z|\s+]{1,5}){1, 2})?([\s|\,|.]+)?(([a-zA-Z|\s+]{1,30}){1,4})(court|ct|street|st| drive|dr|lane|ln|road|rd|blvd)([\s|\,|.|\;]+)?(([a-zA-Z|\s+]{1,30}){1 ,2})([\s|\,|.]+)?\b(AK|AL|AR|AZ|CA|CO|CT|DC|DE|FL|GA|GU|HI|IA|ID| IL|IN|KS|KY|LA|MA|MD|ME|MI|MN|MO|MS|MT|NC|ND|NE|NH|NJ|NM|NV|NY|OH|OK|OR|PA| RI|SC|SD|TN|TX|UT|VA|VI|VT|WA|WI|WV|WY)([\s|\,|.]+)?(\s+\d{5})?( [\s|\,|.]+)/i
(有时只有街道和城市,但没有州或邮政编码)
正则表达式 2:
/\b(\d{2,5}\s+)(?![a|p]m\b)(NW|NE|SW|SE|north|south|west|east|n|e| s|w)?([\s|\,|.]+)?(([a-zA-Z|\s+]{1,30}){1,4})(court|ct|street|st |drive|dr|lane|ln|road|rd|blvd)/i
【问题讨论】:
-
您没有说明您的最终目标,因此我们无法知道您想要什么或我们可以如何提供帮助。 “为了让它变得更好”是相当模糊的:)
-
我的眼睛。我的眼睛。
-
欢迎来到 Stack Overflow,@isuelt -- 已经有一段时间了,所以不要忘记点击复选标记接受最有帮助的答案。
-
我发现这个也很有用:codeproject.com/Tips/989012/…
标签: javascript regex match highlight street-address