CASS認定の住所検証サービスを使用して、入力時にユーザーが指定した住所を修正することを検討しています。(具体的には、SmartyStreetsのLiveAddressを調べています。)ただし、USPSは、正しいアドレスをすべて大文字にする必要があることを示しているため、CASSサービスはほぼ均一にアドレスを返します。ただし、そのアドレスのクライアントにメールを送信する場合は、より人道的で従来型のケーシングを使用することをお勧めします。
もちろん、問題はそれをどのように実現するかです。正しく大文字にされた通りと都市の名前の完全な全国的なデータベースを含まない完璧な解決策のようなものはないことを私は知っています。ただし、修正されたアドレスをユーザーにキックバックし、最終的にはユーザーに任せるため、一連の無難なヒューリスティックで十分な場合があります。
数分考えた後に思いついた問題の短いリスト:
SW FIRST ST
SW First St
ではなく、である必要がありSw First St
ます。MCDOUGLE ST
McDougle St
ではなく、である必要がありMcdougle St
ます。MACDOUGLE ST
通常はそうではないので、おそらくでMacdougle St
はなくする必要があります。MacDougle St
Macoroni Rd
MacOroni Rd
1ST ST
1st St
ではなく、である必要があり1St St
ます。- 通りの名前が名前に基づいているかどうかわからないため、安全に作成できない可能性があります
VAN
がvan
、VON
おそらくになりvon
ます。
少なくとも私を始めることができる既存のライブラリはありますか?アドレスは複雑で気まぐれなものであり、必要がなければ、すべてを自作したくはありません。私はC#を使用していますが、別の言語からコードを移植することはできます。
それを除けば、通りや都市の名前の一般的な大文字の例外について適切な参照を持っている人はいますか?