demonstrates the use of DBMS_UTILITY.TABLE_TO_COMMA and DBMS_UTILITY.COMMA_TO_TABLE.
SQL> SQL> set serveroutput on SQL> SQL> DECLARE 2 v_InitialString VARCHAR2(100) := 'Alpha, Bravo, Charlie, Delta, Epsilon, Frank, George'; 3 v_Table DBMS_UTILITY.UNCL_ARRAY; 4 v_FinalString VARCHAR2(100); 5 v_TabLen BINARY_INTEGER; 6 BEGIN 7 DBMS_OUTPUT.PUT_LINE('Initial string: ' || v_InitialString); 8 DBMS_UTILITY.COMMA_TO_TABLE(v_InitialString, v_TabLen, v_Table); 9 DBMS_OUTPUT.PUT_LINE('Table (length = ' || v_TabLen || '):'); 10 FOR v_Count IN 1..v_Table.COUNT LOOP 11 DBMS_OUTPUT.PUT_LINE(v_Table(v_Count)); 12 END LOOP; 13 DBMS_UTILITY.TABLE_TO_COMMA(v_Table, v_TabLen, v_FinalString); 14 DBMS_OUTPUT.PUT_LINE('Final string (length = ' || v_TabLen || '):'); 15 DBMS_OUTPUT.PUT_LINE(v_FinalString); 16 END; 17 / Initial string: Alpha, Bravo, Charlie, Delta, Epsilon, Frank, George Table (length = 7): Alpha Bravo Charlie Delta Epsilon Frank George Final string (length = 7): Alpha, Bravo, Charlie, Delta, Epsilon, Frank, George PL/SQL procedure successfully completed. SQL>