Tag: street address

地址匹配密钥算法

我有两个单独的表中的地址列表,略微偏离我需要能够匹配。 例如,可以通过多种方式输入相同的地址: 110 Test St 110 Test St. 110 Test Street 虽然简单,但你可以想象更复杂的场景中的情况。 我正在尝试开发一种能够将上述地址作为关键字匹配的简单算法。 例如。 关键可能是“11TEST” – 110的前两个,测试的前两个和街道变体的前两个。 完整匹配键也将包括前5个邮政编码,因此在上面的示例中,完整键可能看起来像“11TEST44680”。 我正在寻找有效的算法或资源的想法,我可以在开发时考虑这些因素。 任何想法都可以是伪代码或您选择的语言。 我们只关心美国的地址。 事实上,我们只查看来自俄亥俄州和密歇根州的250个邮政编码的地址。 我们也无法访问任何邮政软件,尽管对于具有成本效益的解决方案的想法是开放的(它基本上是一次性使用)。 请注意,这是来自政府来源的初始数据转储,因此有关用户如何清理它的建议对我构建应用程序很有帮助,但我希望能够将地址匹配为最佳状态。尽可能好。

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

我正在寻找一个好的工具,可以使用完整的邮件地址,格式化显示或与邮件标签一起使用,并将其转换为结构化对象。 例如: // 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 现在我可以使用RegEx来做到这一点。 但棘手的部分是保持它足够通用,以处理世界上任何地址! 我确信必须有一些东西可以做到。 如果有人注意到,这实际上是opensocial.address对象的格式。