求ASP字符串截取函数代码
函数要求:根据标签截取字符串function函数名(原始字符串,开始字符,结尾字符)获取开始字符出现位置A获取结尾字符出现位置B判断A和B之间嵌套开始字符的出现次数C,C...
函数要求:根据标签截取字符串
function 函数名(原始字符串,开始字符,结尾字符)
获取开始字符出现位置A
获取结尾字符出现位置B
判断A和B之间嵌套开始字符的出现次数C,C=0为不嵌套
获取结尾字符第C+1次出现的位置D
截取A和D之间的字符串输出
end function
目前我不知道如何获取字符出现的次数和获取某字符第N次出现的位置 展开
function 函数名(原始字符串,开始字符,结尾字符)
获取开始字符出现位置A
获取结尾字符出现位置B
判断A和B之间嵌套开始字符的出现次数C,C=0为不嵌套
获取结尾字符第C+1次出现的位置D
截取A和D之间的字符串输出
end function
目前我不知道如何获取字符出现的次数和获取某字符第N次出现的位置 展开
2个回答
展开全部
<script language="vbscript">
str = "111<a>222<b><a>ss</a><a>ss</a>333<a>xx<a>ss</a>..</a>yy</b><a>ss</a>444</a>555"
msgbox xx(str,"<a>","</a>")
function xx(str,beginStr,endStr)
dim pos,c1,c2,d1,d2
pos = instr(str,beginStr) '<a>的位置
c1=1 '<a>的个数
c2=0 '</a>的个数
do while c1<>c2
d1 = instr(pos+1,str,beginStr) '下个<a>的位置
d2 = instr(pos+1,str,endStr) '下个</a>的位置
if d1=0 and d2=0 then
'开始,结束,都没找到,说明个数不匹配
xx = ""
exit function
elseif d1>0 and d2=0 then
'说明下个是<a>
c1 = c1+1
pos = d1
elseif d1=0 and d2>0 then
'说明下个是</a>
c2 = c2 +1
pos = d2
elseif d1<d2 then
'说明下个是<a>
c1 = c1+1
pos = d1
else 'd2<d1
'说明下个是</a>
c2 = c2 +1
pos = d2
end if
loop
xx = mid(str,instr(str,beginStr),d2+len(endStr)-instr(str,beginStr))
end function
</script>
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询