6

Does anyone know a library to compare addresses in Java ?

Something that would give equality on addresses, written in different ways.

For example, it should recognize that

"22 Acacia Avenue" and "22 acacia av." 

is the same address.

Of course, this can escalate a lot, that's why i'm asking.

Thanks in advance.

Kevin Reid
  • 37,492
  • 13
  • 80
  • 108
Tom
  • 43,810
  • 29
  • 138
  • 169
  • 2
    you are asking about how to parse addresses in free text to a canonical form. After you parse them, equating them is easy. – Yoni Feb 11 '10 at 13:32
  • @Yoni, I'm taking a look at Levenshtein distance to test each part. Thanks. – Tom Feb 11 '10 at 13:59

2 Answers2

3

You should check out this question: Where is a good Address Parser

Community
  • 1
  • 1
Keith Rousseau
  • 4,435
  • 1
  • 22
  • 28
0

The only way to truly and accurately compare addresses is to ensure that both are standardized and certified. Within the USA, you can leverage the 12-digit delivery point barcode on a certified address which can serve as a unique identifier for a given address. Beyond that, there's not much else you can because addresses are not self validating and can be written in countless different ways. Even complex regex don't help. And don't get me started on how people spell streets and cities incorrectly.

I should mention that I'm the founder of SmartyStreets. We have a CASS-certified address verification service which allows you to clean, standardize, verify, and confirm each address which then makes duplicate detection a piece of cake. We offer both batch processing to obtain a CASS-certified list or individual "live" checking via an address verification web service API.

Martijn Pieters
  • 1,048,767
  • 296
  • 4,058
  • 3,343
Jonathan Oliver
  • 5,207
  • 32
  • 31