为了能够日常使用我们将提取xml 或者是text 内容写成一个函数;
我们首先建一个 分隔函数(SplitEx),分隔函数(SplitEx)是不变的 xml、text都是基于分隔函数(SplitEx)之上 :
CREATE OR REPLACE FUNCTION SplitEx(SourceStr in varchar2,StrDelimiter in varchar2,idx in number)
return VarChar2
is
i number(10);
k number(10);
Len number(10);
SourceStr2 varchar2(4000);
--获取字符串中的一部份字符段 ,用于取得诊断串中第n个诊段的值
Begin
Len :=length(StrDelimiter);
SourceStr2 :=rtrim(ltrim(SourceStr));
i :=instr(SourceStr2,StrDelimiter);
k :=1;
while i>=1
loop
If k=idx then
Begin
if idx=1 then
return substr(SourceStr2,1,i-1);
else
return substr(SourceStr2,Len,i-Len);
end if;
End;
else
SourceStr2 :=substr(SourceStr2,i+1,length(SourceS