2011-10-26 2 views
2

Je suis à la recherche d'un service de validation d'adresse CASS - Certifié pour corriger les adresses de rue fournies par l'utilisateur au moment de l'entrée. (Spécifiquement, je regarde LiveAddress de SmartyStreets.) Cependant, USPS dicte qu'une adresse correcte doit être dans toutes les majuscules, ainsi les services de CASS retournent presque uniformément des adresses de cette manière. Cependant, lorsqu'on envoie un courrier au client à cette adresse, il serait préférable d'utiliser un boîtier conventionnel plus humain.Adresse Capitalisation

La question, bien sûr, est de savoir comment y arriver. Je sais qu'il n'existe pas de solution parfaite qui n'implique pas une base de données nationale complète de noms de rues et de villes correctement capitalisés. Cependant, un ensemble d'heuristiques passables peut être suffisant, puisque nous remettrons probablement l'adresse corrigée à l'utilisateur, lui laissant finalement le choix.

Une courte liste des problèmes que j'ai pu trouver au bout de quelques minutes de la pensée:

  • SW FIRST ST devrait être SW First St, pas Sw First St.
  • MCDOUGLE ST doit être McDougle St, et non Mcdougle St.
  • MACDOUGLE ST devrait probablement être Macdougle St plutôt que MacDougle St, puisque Macoroni Rd doit généralement pas être MacOroni Rd.
  • 1ST ST doit être 1st St, et non 1St St.
  • Ne sachant pas si un nom de rue est basé sur un nom de famille, nous ne pouvons probablement pas faire VAN en toute sécurité dans van, mais VON peut probablement devenir von.

Y a-t-il des bibliothèques existantes qui pourraient au moins me lancer? Les adresses sont des choses compliquées et capricieuses, et je préfère ne pas bricoler tout ça si je n'ai pas à le faire. J'utilise C#, mais je suis ouvert au portage de code d'une autre langue. À part cela, est-ce que quelqu'un a une référence décente des exceptions communes de capitalisation pour les noms de rue et/ou de ville?

Répondre

2

Parfait de voir que vous utilisez le service LiveAddress pour faciliter la vérification d'adresse et la standardisation. Il y a une chose que vous voudrez peut-être savoir qui vous aidera considérablement dans le processus d'application des règles de boîtier à votre adresse standardisée:

Nous avons récemment introduit un nouveau point d'extrémité REST+JSON qui renvoie la forme standardisée de l'adresse ainsi que divers composants de l'adresse. Pour cette raison, il est très facile d'appliquer vos règles de casing aux valeurs "street_name" et "city_name" retournées indépendamment du suffixe de la rue et des pré/post-directions.

Nous vous invitons à contacter l'assistance de SmartyStreets pour obtenir de l'aide supplémentaire sur ce problème, en plus des questions sur Stack Overflow (que nous surveillons continuellement). Je devrais probablement aussi mentionner que je suis le fondateur de SmartyStreets. Enfin, nous travaillons sur la possibilité de renvoyer des adresses correctement encapsulées, mais je n'ai pas encore de délai de publication.

+0

Cela aiderait certainement dans beaucoup de situations plus compliquées. Merci! – WCWedin

+0

@JonathanOliver, avez-vous un lien mis à jour pour cette bibliothèque? – Nelu

1

Ce n'est pas une bibliothèque, mais vous pouvez probablement résoudre le problème avec le Google Maps API en fonction de vos besoins.

+0

Suggérez-vous que je valide d'abord l'adresse en utilisant l'API de validation, puis transmette l'adresse validée à Google pour la géolocalisation afin qu'ils puissent corriger la capitalisation pour moi? Un peu lourd, mais assez intelligent. Je pense qu'il faudrait aussi que je montre une carte de l'emplacement pour rester dans les API de Google Maps API, mais ce n'est pas impossible. – WCWedin

Questions connexes