If you want the part before the last comma, one way (of many) is with a plain substring()
call (regexp variant):
substring(direction FROM ',([^,]+),[^,]+$') AS city
Your UPDATE
statement might look like this:
UPDATE tbl
SET city = substring(direction FROM ',([^,]+),[^,]+$')
WHERE direction ~ ', *\D\D \d{5}$'