82 |
gadeident = helperCache.get(helperSearchKey); |
gadeident = helperCache.get(helperSearchKey); |
83 |
} |
} |
84 |
|
|
85 |
|
if (gadeident == null) { |
86 |
|
String best = getbestLevenshteinDistance(vasketVejnavn, postnrVeje); |
87 |
|
if (best != null) { |
88 |
|
gadeident = postnrVeje.get(best); |
89 |
|
} |
90 |
|
} |
91 |
|
|
92 |
|
|
93 |
// Brug OpenStreetMap før vi prøver google |
// Brug OpenStreetMap før vi prøver google |
94 |
// For google har en request limit, det har OSM ikke! |
// For google har en request limit, det har OSM ikke! |
347 |
} |
} |
348 |
|
|
349 |
|
|
350 |
|
private String getbestLevenshteinDistance(String vasketVejnavn, Map<String,Long> postnrVeje) { |
351 |
|
for(String vej : postnrVeje.keySet()) { |
352 |
|
if ( StringUtils.getLevenshteinDistance(vasketVejnavn, vej) == 1) { |
353 |
|
System.out.println("Levenstein: " + vasketVejnavn + "->" + vej); |
354 |
|
return vej; |
355 |
|
} |
356 |
|
} |
357 |
|
|
358 |
|
return null; |
359 |
|
} |
360 |
|
|
361 |
private String calculateExtendedDaoRoute(ExtendedBean eb, Address orgAddress, Address targetAddress) { |
private String calculateExtendedDaoRoute(ExtendedBean eb, Address orgAddress, Address targetAddress) { |
362 |
|
|
363 |
// /////////////////////////////////////////////////////////////////// |
// /////////////////////////////////////////////////////////////////// |
471 |
//alternative måder at stave vej/gade/alle |
//alternative måder at stave vej/gade/alle |
472 |
aliasSet.add(vejnavn.replace("vej", "ve") ); |
aliasSet.add(vejnavn.replace("vej", "ve") ); |
473 |
aliasSet.add(vejnavn.replace("vej", "vj") ); |
aliasSet.add(vejnavn.replace("vej", "vj") ); |
474 |
|
aliasSet.add(vejnavn.replace("vej", "v") ); |
475 |
|
|
476 |
aliasSet.add(vejnavn.replace("alle", "all") ); |
aliasSet.add(vejnavn.replace("alle", "all") ); |
477 |
aliasSet.add(vejnavn.replace("allé", "all") ); |
aliasSet.add(vejnavn.replace("allé", "all") ); |