论坛首页 综合技术论坛

字符串分割函数

浏览 2216 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-07-29  

字符串分割函数

袁光东

 

分割特殊字符串连接的字符

字符串为:1001;v1.0;10;

get_part_char('1001;v10;10;',';',1)

的结果为1001

 

Parameters:
   pi_string 要处理的字符
  pi_separator 分隔符
  pi_count 第n个分隔符
function get_part_char(pi_string in varchar2, pi_separator in varchar2, pi_count number) return varchar2 is
  pos number;
  c_pos number;
begin
  if pi_string is null or pi_separator is null then
     return '';
 end if;
 
  if pi_count < 1 then
     return '';
  end if;
 if pi_count = 1 then
    pos := instr(pi_string, pi_separator);
    if pos = 0 then
        return pi_string;
    else
      return substr(pi_string,0,pos-1);
    end if;
  else
     pos := instr(pi_string, pi_separator,1,pi_count -1);
     c_pos := instr(pi_string, pi_separator, 1, pi_count)
     if pos = 0 then
        return '';
     end if;
     if c_pos = 0 then
         return substr(pi_string, pos+1, length(pi_string) - pos);
     else
        return substr(pi_string, pos+1, c_pos - pos -1);
     end if;
  end if;
end get_part_char;

 

论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics