java - 新加坡地址的正则表达式

标签 java android regex

我在做安卓。我一直在谷歌搜索正则表达式公式来验证新加坡地址。我遇到过很多正则表达式模式,但都对我不起作用,因为大多数都适用于美国地址。

我现在使用的当前正则表达式模式是:

\d{1,3}.?\d{0,3}\s[a-zA-Z]{2,30}\s[a-zA-Z]{2,15}

没有做太多。以下是一些新加坡地址示例:

  • 2 Orchard Turn #B4-47 ION ORCHARD 新加坡 238801

  • 68 Marine Parade Road #03-26B parkway Parade 449269

  • 南洋理工学院 180 Ang Mo Kio Avenue 8 Singapore 569830

补充说明:每个地址都会显示邮政编码(后面的 6 位数字)

-------------------------------------------- ----编辑----------------------------------------

我需要一个可以检测并从文本输出中提取地址的正则表达式,它还有其他信息。

例如:

Jean Watson
Managing Director

+65 96622235
68 Marine Parade Road #03-26B parkway Parade 449269

最佳答案

我有这个给你 :) 满足你所有的 3 个输入

  (\d{1,3}.)?.+\s(\d{6})$

参见DEMO

Regex Explanation:

(\d{1,3}.) - 这匹配至少 1 个或最多 3 个数字

? - 使它成为 0 或 1

.+ - 匹配任意字符 1 次或多次

\s - 匹配单个空格

(\d{6})$ - 匹配以 6 位数字结尾

关于java - 新加坡地址的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35145838/

相关文章:

java - Android 版 OpenCV 中的矩阵乘法

android - Google API 客户端 OAuth 始终返回已取消

ruby-on-rails - Rails 有标准的正则表达式验证器吗?

android - 包括与 Ant 一起使用的 Google AdMob SDK

java - 在生产中更改 Logback 附加程序级别的策略

java - 在 Spring WS 中返回带有自定义错误代码和消息的 SOAP 错误对象

java - 为什么不允许使用assertThat(map1, sameInstance(map2))?

arrays - 如何在我的数组中找到与正则表达式匹配的连续字符串?

java - 正则表达式模式java符号

Java Swing getSize() 返回不准确的值?