A floor-unit number and a six-digit postal code are different fields. A value such as #08-12 belongs in the unit information, not in Postal Code.
The example below illustrates field layout using a fictional street. It is not a verified mailing address.
Address layout example
#08-12
SINGAPORE 018956
| Field label | Meaning |
|---|---|
| Block / House number | Block / house number |
| Street name | Street name |
| Floor-unit | Floor-unit number |
| Postal code | Six-digit postal code |
Where should #08-12 go?
Use a Unit or Apartment field when the form provides one. With a two-line address form, place unit information on the second line and keep the street and house number on the first. After copying a full address, verify that parsing can recover the separate fields instead of checking only the visual result.
Why avoid a numeric unit field?
The hash and hyphen are text characters that should survive validation. A numeric input or aggressive cleanup rule can turn the unit into 812. Test typing, pasting, autofill, saving and reopening the form. Also cover an address without a unit according to the receiving form’s rules.
How do I keep the postcode separate?
Use distinct Postal Code and Address Line 2 fields with different examples. Store a value such as 018956 as text. Singapore may appear as both city and country, but the Central, East and West regions in this generator are configuration choices, not a required State field. Verify real address matches separately.
Regression checklist
- Keep #08-12 in an address line or unit field, not the postcode
- Store 018956 as six-character text
- An empty optional unit field must not remove city or postcode values
What the generator currently covers
Current addressLine2 output uses a generic Unit / Block fixture, not an automatic #floor-unit format. Add a dedicated #08-12 case when testing that syntax.
Try the Singapore address generator