Kernpunten

  • Zet gemeente, provinciecode van twee letters en postcode op de laatste binnenlandse regel
  • Gebruik de afwisselende letter-nummerstructuur A1A 1A1
  • Scheid de twee helften met een spatie, niet met een koppelteken
  • Behoud Franse accenten en lange gemeentenamen

Auteurschap en beoordeling

Redactionele principes
Geschreven door
Redactieteam van Random Address Generator
Beoordeeld door
Internationaal beoordelingsteam voor adresformaten
Laatste inhoudelijke update
De spatie in de postcode, provincieafkortingen en de lay-out van de laatste regel zijn beoordeeld volgens de adresrichtlijnen van Canada Post.

De praktische lijnstructuur

Een gebruikelijk Canadees adres is ontvanger, eenheid en straat, gemeente, vervolgens provincie en postcode. Bij binnenlandse post wordt CANADA normaal gesproken weggelaten; International Mail voegt het land op zijn eigen laatste regel toe.

Canada Post plaatst de afkorting van gemeente, provincie of territorium en postcode bij elkaar. Die afgedrukte regel is handig voor labelscreenshots, terwijl de applicatie elk onderdeel nog steeds afzonderlijk moet opslaan.

Formaatvoorbeeld
Amélie RoySuite 310, 88 King Street WestTORONTO ON M5V 3A8CANADA

Canadese formuliervelden in kaart brengen

Een geselecteerde gebruiker kan Ontario weergeven terwijl hij AAN verzendt. Test het zichtbare label, de ingediende waarde en de backend-enum onafhankelijk van elkaar. Gebruik CA niet als provincie: het is in deze context een landcode.

VeldVoorbeeldBewaaradvies
Adresregel 188 King Street WestBehoud de ingevoerde spelling
Adresregel 2Suite 310Optioneel; accepteer Unit, Apt en Suite
Stad / gemeenteTorontoUnicode-reeks
ProvincieONProvincie- of territoriumcode van twee letters
PostcodeM5V 3A8Hoofdletters met één interne spatie
LandCAHoud gescheiden van de provincie

Validatie en normalisatie van postcodes

Canadese postcodes bevatten zes afwisselende letters en cijfers met een spatie na het derde teken. Een formulier kan kleine letters of compacte invoer accepteren en deze bij onscherpte normaliseren, maar de canonieke uitvoer mag geen koppelteken invoegen.

Een patroonmatch bewijst alleen vorm. Gebruik een betrouwbare postgegevensbron als uit het product moet blijken dat de gemeente en de code het daarmee eens zijn.

function normalizeCanadianPostalCode(value) {
  const compact = value.trim().toUpperCase().replace(/\s+/g, '');
  return compact.length === 6 ? `${compact.slice(0, 3)} ${compact.slice(3)}` : value.trim();
}

Tweetalige en Unicode-gegevens zijn niet optioneel

Namen, straten en gemeenten kunnen tekens met accenten bevatten. Een ontsmettingsmiddel dat alleen voor ASCII is, beschadigt het record voordat de postvalidatie zelfs maar begint.

Regressietestfixtures moeten accenten, namen met koppeltekens, een lange gemeente en een lege tweede regel bevatten. Exporteer het testfixture naar CSV en importeer het opnieuw om te bevestigen dat de codering overleeft.

  • Gebruik UTF-8 voor import en export
  • Verwijder accenten nooit stilletjes
  • Test labels afzonderlijk van de ingediende codes
  • Oefen lange locatie-inwikkeling op mobiel

De grens tussen formaat- en bezorgcontroles

Synthetische records zijn handig voor veldlengte, provincieselecties, postcode-hints en exportformaten. Er wordt niet aangetoond dat er sprake is van een combinatie van straat en gebouw. Voor een verzendworkflow is een afzonderlijke geautoriseerde zoekopdracht of gebruikersbevestiging nodig.

Een beoordeling van gebruikersinvoer tot gedrukt label

Begin met één record met een naam met accenten, een Suite en een compacte postcode in kleine letters. Behoud de ingevoerde waarde en maak vervolgens een genormaliseerde waarde in hoofdletters met één interne spatie wanneer de klant het veld verlaat. Maak beide waarden waarneembaar in testdiagnostiek, zodat een servercoderingsfout zich niet kan verbergen achter een browser die de initiële tekst correct weergeeft.

Wijzig vervolgens de provincie en bevestig dat de gemeentesuggesties en de postcode-validatie samen worden gereset. Een verouderde suggestie uit de vorige provincie is gevaarlijker dan een voor de hand liggend leeg veld, omdat het er geloofwaardig uitziet. Leg het uitgaande verzoek vast en verifieer dat de selectie de provinciecode indient in plaats van het gelokaliseerde label.

Geef ten slotte binnenlandse en internationale labels weer. De binnenlandse versie mag CANADA niet toevoegen; de internationale versie plaatst het land op een laatste regel. Inspecteer de daadwerkelijke PDF of gerasterde afdrukuitvoer. Een HTML-voorbeeld kan er correct uitzien terwijl een afdruklettertype een accent laat vallen, een glyph vervangt of de gemeentelijn afknipt.

  • Gebruik Montréal en namen met accenten voor Unicode-dekking
  • Traceer zowel ruwe invoer als genormaliseerde postcode
  • Bewaar de Canadese validatie niet na een landwijziging
  • Vergelijk de binnenlandse en internationale output per land

Veelgestelde vragen

Gebruikt een Canadese postcode een spatie of koppelteken?

Gebruik één spatie in het canonieke display, zoals M5V 3A8. Gebruik geen koppelteken.

Moet ik Ontario of ON opslaan?

Volg uw API-contract. Een gemeenschappelijk patroon geeft Ontario weer, verzendt AAN en onderhoudt een expliciete enum-toewijzing op de server.

Is er een regex-geldige postcode gereed voor verzending?

Nee. Een patroon valideert alleen het formaat. Voor verzending is nog steeds het volledige adres en een passende leveringscontrole vereist.

Bronnen en meer lezen

  1. Canada Post: Belangrijke adresinformatie
  2. MDN: HTML adresvelden automatisch aanvullen