Apple's Contacts apps (iOS and OS X) use CardDAV, which is quite flexible IMO for data input. And, keep in mind that if a contact has an Exchange-formatted "card" or an account is an Exchange IMAPI account, your options will be far different (and IMO quite constrained)...
CardDAV has two input "lines" for addresses, but also supports certain radix marks - such as the comma as a field delimiter. Don't think in terms of lines for CardDAV - think in terms of data fields. One can add a field for a "suite" or "office number" by adding a comma followed by the "#" character or "Ste." text string. In the OS X Contact app, the second "line" is effected by typing Option-Enter at the end of the first address "line".
There's lots of other types of input and field delimiters that can be used effectively in CardDAV apps, but I'll leave that all to you.