Si je comprends bien votre question, vous avez une chaîne et vous la divisez d'abord sur un séparateur, puis vous trouvez ensuite le dernier élément du tableau et vous supprimez le reste.
Vous pourriez passer à côté de l'intermédiaire et obtenir directement le dernier élément :
SELECT regexp_replace('foo bar baz', '^.* ', '')
Résultat :
baz