declare
string_to_parse varchar2(2000) := 'abc,def,ghi,klmno,pqrst';
l_count number;
l_value varchar2(2000);
begin
string_to_parse := string_to_parse||',';
l_count := length(string_to_parse) - length(replace(string_to_parse,',',''));
-- In oracle 11g use regexp_count to determine l_count
for i in 1 .. l_count loop
select regexp_substr(string_to_parse,'[^,]+',1,i)
into l_value
from dual;
dbms_output.put_line(l_value);
end loop;
end;
Ese codigo lo que hace es parsear la cadena "string_to_parse" y mostrarla con un dbms_output, es solo cuestion de adecuar el codigo dependiendo de cada necesidad. La importancia del parseo es usar la funcion regexp_substr, lo que hace es extraer un token dependiendo de la expresion regular que se le de, en este caso la expresion regular es: '[^,]+' , que en resumen, se use la "coma" como separador del texto.
Hello world!
Hace 1 año