Один из вариантов - использовать регулярные выражения, т. Е. REGEXP_INSTR
. Вот пример; POS
представляет позицию пробела.
SQL> with test (col) as
2 (select 'Hi world, this is my string' from dual)
3 select regexp_instr(col, ' ', 1, level) pos
4 from test
5 connect by level <= regexp_count(col, ' ');
POS
----------
3
10
15
18
21
SQL>
Для проверки результата:
Hi world, this is my string
* * * * *
123456789012345678901234567
3 10 15 18 21