码迷,mamicode.com
首页 > 数据库 > 详细

oracle自定义函数:将字符串中的特殊字符转化为逗号

时间:2016-05-11 18:17:12      阅读:333      评论:0      收藏:0      [点我收藏+]

标签:

create or replace function F_SPLIT_CONDITION(START_STRING VARCHAR2, V_FLAG VARCHAR2)
/**
*将给出的START_STRINGN字符串按V_FLAG替换为逗号分隔的字符串
*例如:12-34-56 替换为‘12‘,‘34‘,‘56‘
*使用loop循环实现
*/
RETURN VARCHAR2 IS
L_STRING VARCHAR2(100);--输出字符串
L_INDX INTEGER; --特殊字符
V_STRING VARCHAR2(100) := START_STRING; --原字符串
begin
L_STRING := ‘‘‘‘;--初始化为一个‘号
LOOP
L_INDX := INSTR(V_STRING,V_FLAG);--找到特殊字符的位置
IF L_INDX > 0 THEN
L_STRING := L_STRING||SUBSTR(V_STRING,1,L_INDX - 1);--将第一组数字剪切出来,此时数字为‘12
V_STRING := SUBSTR(V_STRING,L_INDX + LENGTH(V_FLAG));--将12-剪切掉
L_STRING := L_STRING||‘‘‘,‘‘‘;--在‘12后面加上‘,此时L_STRING为‘12‘
ELSE
L_STRING := L_STRING||V_STRING;--最后一个不用再进行剪切,直接加在最后面就可以了
EXIT;
END IF;
END LOOP;
L_STRING := L_STRING||‘‘‘‘;--加上最后的‘
RETURN(L_STRING);--返回最后拼接成功的字符
end F_SPLIT_CONDITION;

oracle自定义函数:将字符串中的特殊字符转化为逗号

标签:

原文地址:http://www.cnblogs.com/qadyyj/p/5482720.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!