Последнее слово в предложении: в SQL (возможны ли регулярные выражения?)

Мне нужно, чтобы это было сделано в Oracle SQL (10gR2). Но я полагаю, я бы лучше выразился, любой хороший, эффективный алгоритм в порядке.

Учитывая строку (или предложение, содержащее одно или несколько слов на английском языке), как вы найдете последнее слово предложения?

Вот что я попробовал в SQL. Но я хотел бы увидеть эффективный способ сделать это.

select reverse(substr(reverse(&p_word_in)
                         , 0
                         , instr(reverse(&p_word_in), ' ')
                         )
                  )
      from dual;

Идея состояла в том, чтобы перевернуть строку, найти первый встречающийся пробел, извлечь подстроку и перевернуть строку. Это довольно эффективно? Доступно ли регулярное выражение? Я на Oracle 10g R2. Но я не против увидеть какие-либо попытки на другом языке программирования, я не против написать функцию PL / SQL в случае необходимости.

Обновить:

Джеффри Кемп дал прекрасный ответ. Это работает отлично.

Ответ
SELECT SUBSTR(&sentence, INSTR(&sentence,' ',-1) + 1)
FROM dual

Ответы на вопрос(5)

Ваш ответ на вопрос