我在做安卓。我一直在谷歌搜索正则表达式公式来验证新加坡地址。我遇到过很多正则表达式模式,但都对我不起作用,因为大多数都适用于美国地址。
我现在使用的当前正则表达式模式是:
\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/