Is your address collected/stored as a single field or as more than one field.
If it is a single field then determining programmatically where to split it
is going to be... let's say... interesting.
Mind you, if it is a single field (and I'm not advocating that it should be)
AND you can train your data entry staff to hit [ctrl][enter] within the field
to move to a new line, then your address output will appear the same way.