oracel:获取字符串拆分后的数组大小

来源:互联网 发布:dcp1618w扫描软件 编辑:程序博客网 时间:2024/05/17 23:25
CREATE OR REPLACE FUNCTION splitArrayLength (v_source IN VARCHAR2, v_delimiter IN VARCHAR2)  RETURN INT IS  j    INT := 0;  i    INT := 1;  len  INT := 0;  delim_len INT := 0;  cnt INT := 0;BEGIN  len  := length(v_source);  delim_len := length(v_delimiter);  WHILE j < len LOOP    j := instr(v_source, v_delimiter, i);    IF j = 0 THEN      j := len;      cnt := cnt+1;      IF i >= len THEN        EXIT;      END IF;    ELSE      i := j + delim_len;      cnt := cnt+1;    END IF;  END LOOP;  RETURN cnt;END splitArrayLength;


测试:

select splitArrayLength('省/市/区','/') as counts  from dual

原创粉丝点击