Как насчет таких 2 вариантов:
- result_1 использует подстроку регулярного выражения ( взять 3-е слово )
- result_2 использует традиционный
SUBSTR
+ INSTR
комбинация
SQL> with test (col) as
2 (select '#152#005#001#00000000000000000000#0# #' from dual)
3 select regexp_substr(col, '\w+', 1, 3) result_1,
4 --
5 substr(col, instr(col, '#', 1, 3) + 1,
6 instr(col, '#', 1, 4) - instr(col, '#', 1, 3) - 1) result_2
7 from test;
RES RES
--- ---
001 001
SQL>