我在PL / sql脚本(例如数据:=’a,b,c,d,e’)中有一个逗号分隔的字符串,我需要在脚本中解析.
我想循环遍历字符串并处理每个项目.像一个’foreach’循环.
如果您在Oracle 10G或11G上,那么您应该有一个内置的Apex函数apex_util.string_to_table:
- sql> declare
- 2 v_array apex_application_global.vc_arr2;
- 3 v_string varchar2(2000);
- 4 begin
- 5
- 6 -- Convert delimited string to array
- 7 v_array := apex_util.string_to_table('alpha,beta,gamma,delta',',');
- 8 for i in 1..v_array.count
- 9 loop
- 10 dbms_output.put_line(v_array(i));
- 11 end loop;
- 12
- 13 -- Convert array to delimited string
- 14 v_string := apex_util.table_to_string(v_array,'|');
- 15 dbms_output.put_line(v_string);
- 16 end;
- 17 /
- alpha
- beta
- gamma
- delta
- alpha|beta|gamma|delta
- PL/sql procedure successfully completed.