http://www.upu.int具有國際地址的格式標準。出版物28在http://usps.com具有美國格式標準。像http://semaphorecorp.com這樣的CASS軟件驗證和標準化美國地址。
美國郵政總局希望串聯在一行以下unpunctuated地址組件:
* house number
* predirectional (N, SE, etc)
* street
* suffix (AVE, BLVD, etc)
* postdirectional (SW, E, etc)
* unit (APT, STE, etc)
* apartment/suite number
例如,102 N MAIN ST SE APT B.
如果你把整個地址線作爲單場在你的數據庫中,輸入和編輯很容易,但是搜索可能更困難(例如,在SOUTH EAST LANE是東EET的街道EAST,還是SEE LANE ST的LANE?)。
如果您將地址解析到單獨的字段中,搜索街道名稱或公寓等組件變得更容易,但您必須將所有內容附加在一起輸出,您需要CASS軟件才能正確解析,並且郵政信箱,農村路線地址,APO/FPO地址有特殊的解析。
在該位置有多個地址的物理位置是多單元建築物,在這種情況下APT和STE等單元后的字母/數字指定地址,或者它是商業郵件接收代理(例如UPS商店)和maildrop /私人信箱號碼被追加(如100 MAIN ST STE B PMB 102),或者它是一家擁有一個USPS交付點的公司,並且郵件在USPS交付後路由(通常需要公司可能需要的單獨的mailstop字段,但USPS將不會在地址線上)。
具有多個實際地址的聯繫人通常是具有街道地址和郵政信箱的公司或個人。請注意,每個地址都有不同的郵政編碼是很常見的。
這是非常典型的,一個商業交易可能有一個送貨地址和一個賬單地址(再次,不同的郵政編碼)。我把每個地址的信息是:
* name prefix (DR, MS, etc)
* first name and initial
* last name
* name suffix (III, PHD, etc)
* mail stop
* company name
* address (one line only per Pub 28 for USA)
* city
* state/province
* ZIP/postal code
* country
我通常打印郵件而此人的姓名和公司之間停止,因爲國家包含狀態/ ZIP其中包含包含包含包含公司的地址城市包含該人的郵件停止。我使用CASS軟件在輸入或編輯時驗證和標準化地址。
Google/Android提供了他們如何在http://developer.android.com/reference/android/provider/ContactsContract.CommonDataKinds.StructuredPostal.html 以及http:// 3277行的源代碼的示例。 android.git.kernel.org/?p=platform/frameworks/base.git;a=blob;f=core/java/android/provider/ContactsContract.java;h=a56bb4593ba23848954819885436c0f3bfb15505;hb=HEAD – Don 2010-06-22 18:28:54
Android佈局使得在同一記錄中包含單獨的郵政信箱和街道地址,但只允許一個郵政編碼的經典錯誤。郵政信箱和街道地址很少共享相同的ZIP。 – 2010-11-03 20:59:55