Ville

La ville est le point clef de notre analyse puisque c'est elle qui permet de situer le plus précisément l'adresse. Le but étant de trouver un identifiant unique par ville qui correspond à une entrée dans la base des villes de geoloc.org qui nous permet ensuite de travailler.
Normalement tout ce qui se trouve avant le nom de la ville n'est pas analysé. Il faut donc pouvoir délimiter ce nom.

Le plus souvent, si le travail a été bien fait avant et qu'on a retiré toutes les informations concernant le pays, le code postal et la région, le nom de la ville reste tout seul sur la dernière ligne.

Avenue Louis-Ruchonnet 37
1003 Lausanne
Suisse

=> Avenue Louis-Ruchonnet 37
   Lausanne

=> Lausanne

Dans certains cas cette méthode ne donne rien, après avoir essayé de corriger toutes les fautes sur cet essai, on suppose que la ville est sur la même ligne que le reste de l'adresse mais est composée d'un seul mot :

Hay Ryad 12 D 9 Rabat Maroc
=> Hay Ryad 12 D 9 Rabat
=> Rabat

Correction des erreurs

Un nom de ville, notemment en France, peut s'écrire (et le facteur comprend) de plein de façons différentes. Nous avons donc essayé de résoudre les erreurs en commencant par les plus probables et en s'arrêtant dès qu'il n'y a plus qu'une seule ville qui puisse correspondre

La première chose à faire est de vérifier que cette ville existe, si c'est le cas : pas besoin de corriger des erreurs. On fait donc appel au CityFinder dans le pays et dans la région concernée. Le CityFinder est insensible à la casse ce qui permet de corriger déjà les erreurs de majuscules

7, Allee de Guyenne
31000 TOULOUSE
France

=> TOULOUSE (FR, 31)

=> CityFinder => Toulouse (FR, 31, 127906)

S'il y a ambiguité dès cette première recherche, c'est soit que les informations ne sont pas assez précises (pays ou région manquants), soit qu'il y a une imprécision dans la base et qu'il faudrait préciser des régions plus petites pour ce pays.

La première correction que l'on fait ensuite est de supposer que le nom de la ville n'est pas entier, on fait alors une recherche CityFinder approchée. Si celle ci nous donne trop de résultats, on cherche parmi les réponses les villes qui peuvent s'abréger :

14 rue garibaldi
94100 St-Maur
France

=> St-Maur (FR, 94)
=> CityFinder approché => St-Maur-des-Fossés | St-Maurice
=> St-Maur-des-Fossés (FR, 31, 151204)