I started this and found it hard to extract the city, after looking at the solution I used the pipe idea however have kept my first attempt in there for the other fields.
I feel like I brute forced this one with calculations, there is probably a better way to do this to ensure that it catches and filters out the street address.