4

感谢您查看我的帖子,我一直在摸不着头脑,现在听起来很简单的要求结果却是一个艰巨的要求,下面是要求....

我需要分开(街道编号、街道名称、Suite\Apt 信息或找到的任何 zip)

地址如下所示:

  1. 主街 123 号
  2. 123 NW.17 街
  3. 华盛顿路一号套房 405
  4. 1 Governement Dr #400,华盛顿,01211

到目前为止,我能够分离出 123 Main St,但是每当我在字符串中进一步使用 Char\Pat 索引时,第 2 行上方的地址就会被打乱,例如变成 (123 NW St)

我的主要目标是打破htis字符串并将其放在桌子上然后连接.....

任何帮助将非常感激。

4

2 回答 2

8

根据我的经验,解析地址是一场噩梦。可能至少有十几种方法可以表示同一个地址,而且您将很难想出一种可靠的方法来将各个部分分开。

我的建议是将您拥有的任何地址传递给地图服务(谷歌,雅虎等)并使用他们传回给您的结果。比你和我更聪明的人已经找到了一种非常可靠的方法来做到这一点。我建议利用他们提供的服务。

于 2013-04-15T22:37:03.970 回答
-3

好吧,这是我的替代建议,不是您问题的答案。

字符串操作操作总是非常关键和乏味的工作,而且很多时候它不能完美地工作。

我有一个很好的替代选择,您会喜欢它。与其拥有单行地址,不如将其划分为不同的部分。

例如 street1 street2 city state country

现在在数据库中,您可以创建 XML 数据类型并将上述所有字段存储到一个 XML 格式字段中,例如

<Address>
    <street1>data1</street1>
    <street2>data2</street2>
    <city>data3</city>
    <state>data4</state>
    <country>data5</country>
</Address>

优点:

1.如果用户不想输入任何字段或者您不想显示任何字段,现在您可以灵活地插入和检索数据,那么这是最好的方法。
2.它也会给你很好的性能,因为 XML Parsing 比 String 操作更快。
3.XML返回比字符串操作更准确。

于 2013-04-16T12:08:56.467 回答