Als ik je vraag goed begrijp, heb je een string en splits je deze eerst op een of ander scheidingsteken en daarna vind je het laatste element van de array en gooi je de rest weg.
Je zou de middelste man kunnen missen en het laatste element direct kunnen krijgen:
SELECT regexp_replace('foo bar baz', '^.* ', '')
Resultaat:
baz