Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Is there a way to configure SoundEx properties in ArcEngine?

This query: "100 Fairvew Rd returns "100 Fairview Rd"

But this query: "100 Farview Rd" returns no results

Is there a way to make the SoundEx a bit less rigid?

Here are some concrete examples I would like to get to work if possible (ie. these are my specs)

100 cen => central ave

100 w laur ave -> 100 w laurel ave

I'm using the IAddressCandidates2 interface to get my candidates.

IArray resultsArray = addressCandidates.FindAddressCandidates(addressProperties);
share|improve this question
Although it has variants, Soundex is not configurable. See . – whuber Mar 16 '11 at 22:26
up vote 2 down vote accepted

Like whuber said, I don't think soundex is configurable, and it would have to be pretty lax to get central from cen. When I needed to make an address matcher that was as permissive as possible, I used the Levenshtein Distance formula. My solution was to normalize the address, query based on the first 3 letters of the street name, and then run each found address through the levenshtein distance function to see how off it was.

As with most algorithms, you can find an implementation in just about any language.

For your situation, I see it matching more frequently for the examples you gave than soundex, but it's likely going to be a lot more code.

share|improve this answer
+1 Good suggestion and useful remarks. Note, too, that the more generous (lax) you make your matcher, the more likely it is you will create egregious errors without detecting them. – whuber Mar 17 '11 at 13:19

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.