Это похоже на работу:
SQL> WITH q AS (
SELECT '/01/02/007/008/009' a FROM dual
UNION
SELECT '/01/02/007/008' FROM dual
UNION
SELECT '/01/02/007' FROM dual
UNION
SELECT '/01/02' FROM dual
UNION
SELECT '/01' FROM dual)
SELECT a, CASE WHEN INSTR(a,'/',1,4) > 0 THEN SUBSTR(a,2,INSTR(a,'/',1,4)-2)
WHEN INSTR(a,'/',1,3) > 0 THEN SUBSTR(a,2)
WHEN INSTR(a,'/',1,2) > 0 THEN SUBSTR(a,2)||'/NA'
ELSE SUBSTR(a,2)||'/NA/NA'
END RESULT
FROM q;
A RESULT
-------------- -------------------
/01 01/NA/NA
/01/02 01/02/NA
/01/02/007 01/02/007
/01/02/007/008 01/02/007
/01/02/007/008/009 01/02/007
SQL>
Конечно, если это просто упражнение в регулярных выражениях, то оно не соответствует вашим требованиям.