相关疑难解决方法(0)

从字符串解析可用的街道地址,城市,州,邮编

问题:我有一个来自Access数据库的地址字段,该数据库已转换为Sql Server 2005.此字段包含一个字段中的所有内容.我需要将地址的各个部分解析为规范化表中的相应字段.我需要为大约4,000条记录执行此操作,并且它需要是可重复的.

假设:

  1. 假设在美国的地址(现在)

  2. 假设输入字符串有时包含收件人(被发送者)和/或第二个街道地址(即B组)

  3. 国家可以缩写

  4. 邮政编码可以是标准的5位数或zip + 4

  5. 在某些情况下存在拼写错误

更新:在回答提出的问题时,标准并未普遍遵循,我需要存储个别值,而不仅仅是地理编码和错误意味着拼写错误(上面已修正)

样本数据:

  • AP Croll&Son 2299 Lewes-Georgetown Hwy,Georgetown,DE 19947

  • 11522 Shawnee Road,Greenwood DE 19950

  • 144 Kings Highway,SW Dover,DE 19901

  • 综合Const.服务2 Penns Way Suite 405 New Castle,DE 19720

  • Humes Realty 33 Bridle Ridge Court,Lewes,DE 19958

  • Nichols Excavation 2742 Pulaski Hwy Newark,DE 19711

  • 2284 Bryn Zion Road,Smyrna,DE 19904

  • VEI Dover Crossroads,LLC 1500 Serpentine Road,Suite 100 Baltimore MD 21

  • 580 North Dupont Highway Dover,DE 19901

  • PO Box 778 Dover,DE 19903

string parsing sql-server-2005 street-address

128
推荐指数
13
解决办法
14万
查看次数

哪里是一个好的地址解析器

我正在寻找一个好的工具,可以采用完整的邮件地址,格式化显示或与邮件标签一起使用,并将其转换为结构化对象.

例如:

// Start with a formatted address in a single string
string f = "18698 E. Main Street\r\nBig Town, AZ, 86011";

// Parse into address
Address addr = new Address(f);

addr.Street; // 18698 E. Main Street
addr.Locality; // Big Town
addr.Region; // AZ
addr.PostalCode; // 86011
Run Code Online (Sandbox Code Playgroud)

现在我可以使用RegEx来做到这一点.但棘手的部分是保持它足够通用,以处理世界上的任何地址!

我确信必须有一些可以做到的东西.

如果有人注意到,这实际上是opensocial.address对象的格式.

c# parsing opensocial street-address

28
推荐指数
4
解决办法
3万
查看次数