User:MS BOT/V1.5
V1.5 - Prochain lot de corrections
Premier lancement "pour de vrai" au soir du mercredi 11 mars 2009. Jusque là, tous mes tests se font donc en read-only.
Modifications programmées
highway=*, modification des names
- Pour tous les ways de France, si
highway=*existe et siname=*contient déjà au-moins une majuscule et siname=*répond au critère suivants (sans sensibilité à la casse) :
/// Liste double des constantes utilisees pour les substitutions. const string HighwayName::substitutions[][2] = {
// Typographie des espaces et apostrophes
{"^ +", ""}, // Suppression des espaces en entete
{" +$", ""}, // Suppression des espaces de fin.
{" +", " "}, // Suppression des espaces doubles.
// {"’", "'"}, // Prime => Apostrophe.
// Accents erronnés (erreurs de conversion en UTF-8)
{"é", "é"},
{"É", "É"},
{"è", "è"},
{"È", "È"},
{"ê", "ê"},
{"Ã ", "à"},
// En début de phrase
{"^Acc(è|e)s\\b", "Accès"},
{"^All(é|e)e+\\b", "Allée"},
{"^Aire\\b", "Aire"},
{"^Autoroute\\b", "Autoroute"},
{"^Av(enue)?\\.?space:", "Avenue "},
{"^B(ou)?l?(evar|v)?d\\.?space:", "Boulevard "},
{"^Carrefour\\b", "Carrefour"},
{"^Champ\\b", "Champ"},
{"^Chauss(é|e)e?\\b", "Chaussée"},
{"^Ch(em|emin|)\\.?space:", "Chemin "},
{"^Cit(é|e)\\b", "Cité"},
{"^Clos\\b", "Clos"},
{"^Col\\b", "Col"},
{"^Côte\\b", "Côte"},
{"^Cour\\b", "Cour"}, // La cour
{"^Cours\\b", "Cours"}, // Le cours
{"^Escalier\\b", "Escalier"},
{"^Escaliers\\b", "Escaliers"},
{"^Esplanade\\b", "Esplanade"},
{"^Faubourg\\b", "Faubourg"},
{"^Giratoire\\b", "Giratoire"},
{"^Imp(asse)?\\.?space:", "Impasse "},
{"^La\\b", "La"},
{"^Le\\b", "Le"},
{"^Les\\b", "Les"},
{"^Mail\\b", "Mail"},
{"^Passage\\b", "Passage"},
{"^Place\\b", "Place"},
{"^Pont\\b", "Pont"},
{"^Porte\\b", "Porte"},
{"^Quai\\b", "Quai"},
{"^R(é|e)sidence\\b", "Résidence"},
{"^Rocade\\b", "Rocade"},
{"^Rond(-| )point\\b", "Rond-Point"},
{"^R(ou)?te\\.?space:", "Route "},
{"^Rue\\b", "Rue"},
{"^Ruelle\\b", "Ruelle"},
{"^Sente\\b", "Sente"},
{"^Sentier\\b", "Sentier"},
{"^Square\\b", "Square"},
{"^Villa\\b", "Villa"},
{"^Voie\\b", "Voie"},
// Noms simples
{"\\bAlg(é|e)rie\\b", "Algérie"},
// {"\\bAndr(é|e)space:", "André "},
{"\\bAndr(é|e)e\\b", "Andrée"},
{"\\bAnglais\\b", "Anglais"},
{"\\bAmp(è|e)re\\b", "Ampère"},
{"\\bAquitaine\\b", "Aquitaine"},
{"\\bArpillon\\b", "Arpillon"},
{"\\bAub(é|e)pine\\b", "Aubépine"},
{"\\bAub(é|e)pines\\b", "Aubépines"},
{"\\bBal(é|e)ares\\b", "Baléares"},
{"\\bBateaux\\b", "Bateaux"},
{"\\bBeno(î|i)t\\b", "Benoît"},
{"\\bBlind(é|e)e\\b", "Blindée"},
{"\\bBr(é|e)vent\\b", "Brévent"},
{"\\bBrunandi(è|e)res\\b", "Brunandières"},
{"\\bC(è|e)dre\\b", "Cèdre"},
{"\\bC(è|e)dres\\b", "Cèdres"},
{"\\bCerise\\b", "Cerise"},
{"\\bChapelle\\b", "Chapelle"},
{"\\bCh(â|a)teau\\b", "Château"},
{"\\bChateaubriand\\b", "Chateaubriand"},
{"\\bCh(ê|e)ne\\b", "Chêne"},
{"\\bCh(ê|e)nes\\b", "Chênes"},
{"\\bClo(i|î)tre\\b", "Cloître"},
{"\\bColl(è|e)ge\\b", "Collège"},
{"\\bColonn?el\\b", "Colonel"},
{"\\bCommandant\\b", "Commandant"},
{"\\bConcorde\\b", "Concorde"},
{"\\bCyprès\\b", "Cyprès"},
{"\\bDivision\\b", "Division"},
{"\\bDôme\\b", "Dôme"},
{"space:(E|É)cluse\\b", " Écluse"},
{"space:(E|É)cole\\b", " École"},
{"space:(E|É)coles\\b", " Écoles"},
{"\\bl'(E|É)cole\\b", "l'École"},
{"space:(E|É)coliers\\b", " Écoliers"},
{"\\bdéportation\\b", "Déportation"},
{"\\bDéportés\\b", "Déportés"},
{"\\bdu général\\b", "du Général"},
{"\\bdu maréchal\\b", "du Maréchal"},
{"space:Eau\\b", " Eau"},
{"\\b(E|É)cureuil\\b", "Écureuil"},
{"\\b(E|É)galite\\b", "Égalité"},
{"\\b(E|É)glise\\b", "Église"},
{"\\b(E|É)douard\\b", "Édouard"},
{"\\b(E|É)mile\\b", "Émile"},
{"\\bEmmanuel\\b", "Emmanuel"},
{"\\b(E|É)quateur\\b", "Équateur"},
{"\\b(E|É)rable\\b", "Érable"},
{"\\b(E|É)rables\\b", "Érables"},
{"\\bl'(E|É)tang\\b", "l'Étang"},
{"\\b(E|É)tienne\\b", "Étienne"},
{"\\b(E|É)variste\\b", "Évariste"},
{"\\bFleur\\b", "Fleur"},
{"\\bFleurs\\b", "Fleurs"},
{"\\bFontaine\\b", "Fontaine"},
{"\\bFor(ê|e)t\\b", "Forêt"},
{"\\bFoug(è|e)re\\b", "Fougère"},
{"\\bFoug(è|e)res\\b", "Fougères"},
{"\\bFran(ç|c)ais\\b", "Français"},
{"\\bFran(ç|c)aise\\b", "Française"},
{"\\bFran(ç|c)aises\\b", "Françaises"},
{"\\bFran(ç|c)ois\\b", "François"},
{"\\bFr(è|e)re\\b", "Frère"},
{"\\bFr(è|e)res\\b", "Frères"},
{"\\bGare\\b", "Gare"},
{"\\bG(é|e)n(é|e)ral\\b", "Général"},
{"\\bHôtel\\b", "Hôtel"},
{"\\bHusson\\b", "Husson"},
{"\\bL(e|é)on\\b", "Léon"},
{"\\bLib(é|e)ration\\b", "Libération"},
{"\\bLibert(é|e)\\b", "Liberté"},
{"\\bLieutenant\\b", "Lieutenant"},
{"\\bLumi(è|e)re\\b", "Lumière"}, // Les Frères Lumière ?
{"\\bLyc(é|e)space:", "Lycée "},
{"\\bLyc(é|e)espace:", "Lycée "},
{"\\bMan(œ|oe)uvre\\b", "Manœuvre"},
{"\\bMan(œ|oe)uvres\\b", "Manœuvres"},
{"\\bMar(é|e)chal\\b", "Maréchal"},
{"\\bMartyrs\\b", "Martyrs"},
{"\\bM(é|e)daille\\b", "Médaille"},
{"\\bM(é|e)dit(é|e)rr?ann?(é|e)e?\\b", "Méditerranée"},
{"\\bM(é|e)rite\\b", "Mérite"},
{"\\bM(é|e)rou\\b", "Mérou"},
{"\\bMoli(e|è)re\\b", "Molière"},
{"\\bMonnaie\\b", "Monnaie"},
{"\\bOccupation\\b", "Occupation"},
{"\\bPaix\\b", "Paix"},
{"\\bPlace\\b", "Place"},
{"\\bPr(é|e)sident\\b", "Président"},
{"\\bPr(é|e)s\\b", "Prés"},
{"\\bProf+esseur\\b", "Professeur"},
{"\\bQuartier\\b", "Quartier"},
{"\\bQuatres?\\b", "Quatre"},
{"\\bR(é|e)publique\\b", "République"},
{"\\bR(é|e)sistance\\b", "Résistance"},
{"\\bR(é|e)volution\\b", "Révolution"},
{"\\bSablière\\b", "Sablière"},
// {"\\bS(ain)?t\\.?\\b", "Saint"}, // Généralisation produit des erreurs // {"\\bS(ain)te\\.?\\b", "Sainte"}, // Généralisation produit des erreurs
{"\\bS(œ|oe)ur\\b", "Sœur"},
{"\\bTr(é|e)moli(è|e)re\\b", "Trémolière"},
// {"\\bVent\\b", "Vent"}, // Collision avec Brévent
{"\\bVents\\b", "Vents"},
{"\\bVictoire\\b", "Victoire"},
// Noms composés // {"\\bAber[- ]Beno(î|i)t\\b", "Aber-Benoît"}, // http://fr.wikipedia.org/wiki/Aber-Beno%C3%AEt
{"\\bA(e|é)ropostale\\b", "Aéropostale"},
{"\\bAlbert 1er\\b", "Albert 1er"},
{"\\bAlbert Camus\\b", "Albert Camus"},
{"\\bAlcide De Gasp(e|é)ri\\b", "Alcide De Gasperi"},
{"\\bAlexandre Bouton\\b", "Alexandre Bouton"},
{"\\bAlphonse Morel\\b", "Alphonse Morel"},
{"\\bAndr(é|e) Beno(i|î)t\\b", "André Benoit"},
{"\\bAndr(é|e) Gide\\b", "André Gide"},
{"\\bAndr(é|e) Amp(è|e)re\\b", "André Ampère"},
{"\\bAnne Franc?k\\b", "Anne Frank"},
{"\\bAntoine de Pons\\b", "Antoine de Pons"},
{"\\bA(ntoine)?\\.? de Saint-Exup(é|e)ry\\b", "Antoine de Saint-Exupéry"},
{"\\bBelle-(Î|I)le\\b", "Belle-Île"},
{"\\bCamille Saint[- ]Sa(ë|e)ns\\b", "Camille Saint-Saëns"},
{"\\bCharles de Gaulle\\b", "Charles de Gaulle"},
{"\\bCh(â|a)teau d'Eau\\b", "Château d'Eau"},
{"\\bColl(è|e)ge Street\\b", "College Street"}, // accrochée par erreur.
{"\\bde Gaulle\\b", "de Gaulle"},
{"\\bde ?Lattre de Tassigny\\b", "de Lattre de Tassigny"},
{"\\b (É|E)crins\\b", " Écrins"},
{"\\bEsp(é|e)rance\\b", "Espérance"},
{"\\b(E|É)s?tienne d'Orves\\b", "Estienne d'Orves"},
{"\\b(É|E)tats-Unis\\b", "États-Unis"},
{"\\bFran(c|ç)ois Mitterrand\\b", "François Mitterrand"},
{"\\bFr(è|e)res Lumi(è|e)res?\\b", "Frères Lumière"},
{"\\bGenevi(è|e)ve de Gaulle[- ]Anthonioz\\b", "Geneviève de Gaulle-Anthonioz"},
{"\\bGeorges Cl(é|e)menceau\\b", "Georges Clemenceau"},
{"\\bGeorges? Sand\\b", "George Sand"},
{"\\bHôtel de Ville\\b", "Hôtel de Ville"},
{"\\bJean Jaur(e|è|é)s\\b", "Jean Jaurès"},
{"\\bJean L(é|e)tienne\\b", "Jean Létienne"},
{"\\bJean[- ]Marie Michelier\\b", "Jean-Marie Michelier"},
// {"\\b(John|J|J.) ?(F|F.|Fitzgerald) Kennedy\\b", "John Fitzgerald Kennedy"}, // Suspendu
{"\\bJules Carpentier\\b", "Jules Carpentier"},
{"\\bJules Gu(e|è|é)s?des?\\b", "Jules Guesde"},
{"\\bLa P(e|é)rouse\\b", "La Pérouse"},
{"\\bL(e|é)o lagrange\\b", "Léo Lagrange"},
{"\\bL(e|é)o Ferr(e|é)\\b", "Léo Ferré"},
{"\\bLéon Nautin\\b", "Léon Nautin"},
{"\\bL(e|é)onard de Vinci\\b", "Léonard de Vinci"},
{"\\bLouise Michel\\b", "Louise Michel"},
{"\\bMarcel Beno(i|î)t\\b", "Marcel Benoit"},
{"\\bMar(é|e)chal Joffre\\b", "Maréchal Joffre"},
{"\\bMar(é|e)chal Foch\\b", "Maréchal Foch"},
{"\\bMartin Bernard\\b", "Martin Bernard"},
{"\\bMoulin (à|a) Vent\\b", "Moulin à Vent"},
{"\\bOl+ivier de ?Serres\\b", "Olivier de Serres"},
{"\\bOuv(é|e)a\\b", "Ouvéa"}, // Là c'est une île, non ?
{"\\bPaul (E|É)luard\\b", "Paul Éluard"},
{"\\bPaul-Émile Victor\\b", "Paul-Émile Victor"},
{"\\bPaul Verlaine\\b", "Paul Verlaine"},
{"\\bPierre Beno(i|î)t\\b", "Pierre Benoit"},
{"\\bProsper(te)? M(é|e)rim(é|e)e?\\b", "Prosper Mérimée"},
{"\\bRose Beno(î|i)t\\b", "Rose Benoit"},
{"\\bRen(é|e)e? Cassin\\b", "René Cassin"},
{"\\bS(ain)?t\\.?[- ]Andréspace:", "Saint-André "},
{"\\bS(ain)?t\\.?[- ]André$", "Saint-André"},
{"\\bS(ain)?t\\.?[- ]Antoine\\b", "Saint-Antoine"},
{"\\bS(ain)?t\\.?[- ]Bernard\\b", "Saint-Bernard"},
{"\\bS(ain)?t\\.?[- ]Charles\\b", "Saint-Charles"},
{"\\bS(ain)?t\\.?[- ]Christophe\\b", "Saint-Christophe"},
{"\\bS(ain)?t\\.?[- ]Denis\\b", "Saint-Denis"},
{"\\bS(ain)?t\\.?[- ]Esprit\\b", "Saint-Esprit"},
{"\\bS(ain)?t\\.?[- ](É|E)tienne\\b", "Saint-Étienne"},
{"\\bS(ain)?t\\.?[- ]Exup(é|e)ry\\b", "Saint-Exupéry"},
{"\\bS(ain)?t\\.?[- ]Fran(ç|c)ois\\b", "Saint-François"},
{"\\bS(ain)?t\\.?[- ]Fran(ç|c)ois de Sall?es\\b", "Saint-François de Sales"},
{"\\bS(ain)?t\\.?[- ]Germain\\b", "Saint-Germain"},
{"\\bS(ain)?t\\.?[- ]Jean\\b", "Saint-Jean"},
{"\\bS(ain)?t\\.?[- ]Joseph\\b", "Saint-Joseph"},
{"\\bS(ain)?t\\.?[- ]L(é|e)on\\b", "Saint-Léon"},
// {"\\bS(ain)?t\\.?[- ]Martin\\b", "Saint-Martin"}, // J'"accroche" Jersey avec ça !!!
{"\\bS(ain)?t\\.?[- ]Michel\\b", "Saint-Michel"},
{"\\bS(ain)?t\\.?[- ]Pierre\\b", "Saint-Pierre"},
{"\\bS(ain)?t\\.?[- ]Quentin\\b", "Saint-Quentin"},
{"\\bS(ain)?te?\\.?[- ]Anne\\b", "Sainte-Anne"},
{"\\bS(ain)?te\\.?[- ]C(é|e)cile\\b", "Sainte-Cécile"},
{"\\bS(ain)?te?\\.?[- ]Claire\\b", "Sainte-Claire"},
{"\\bS(ain)?te?\\.?[- ]H(é|e)lène", "Sainte-Hélène"},
{"\\bS(ain)?te?\\.?[- ]Marie\\b", "Sainte-Marie"},
{"\\bS(ain)?te?\\.?[- ]M(é|e)lanie\\b", "Sainte-Mélanie"},
{"\\bSalvador Allende\\b", "Salvador Allende"},
{"\\bTh(é|e)odore Botrel\\b", "Théodore Botrel"},
// Mois de l'année.
{"\\bJanvier\\b", "Janvier"},
{"\\bF(é|e)vrier\\b", "Février"},
{"\\bMars\\b", "Mars"},
{"\\bAvril\\b", "Avril"},
{"\\bMai\\b", "Mai"},
{"\\bJuin\\b", "Juin"},
{"\\bJuillet\\b", "Juillet"},
{"\\bAoût\\b", "Août"},
{"\\bSeptembre\\b", "Septembre"},
{"\\bOctobre\\b", "Octobre"},
{"\\bNovembre\\b", "Novembre"},
{"\\bD(é|e)cembre\\b", "Décembre"}
};
highway=*, modifications des refs
Ajout d'un espace (ASCII 32) entre la lettre et la suite pour les autoroutes :
Axx => A xx : la sélection de fait sur ^(A)[[:space:]]*([[:digit:]]+.*)[[:space:]]*$