获取类似于 中指定位置的value,name的值

//------------------------------------
//功能描述:在"<item value='1' name='测试'/>"中取'1'或者'测试'
//参数说明
//astr_org:目标字符串
//astr_split:分割字符
//ai_idt:位置计数器
//------------------------------------
string ls_rtn
integer li_split_len //分割字符串的长度

 

integer li_idt_str  //第N个分隔符开始和技术循环次数
long ll_end_pos   //实际位置
//<item value='1' name='测试'/> 取“测试”则li_idt_str=3 li_idt_end=4
//ll_str_pos=22 ll_end_pos=25

integer li_cnt   //循环计数器
string ls_org_tmp,ls_tmp

li_idt_str = ai_idt * 2 - 1


li_split_len=len(astr_split)

ls_org_tmp=astr_org
do while pos(ls_org_tmp,astr_split)>0
 li_cnt = li_cnt + 1
 if li_cnt = li_idt_str then
  //<item value='1' name='测试'/>
  ls_tmp=right(ls_org_tmp,len(ls_org_tmp) - (pos(ls_org_tmp,astr_split) + li_split_len - 1))

  if pos(ls_tmp,astr_split) > 0 then
   ls_rtn=left(ls_tmp,pos(ls_tmp,astr_split) - 1)
   exit
  else
   ls_rtn=''
   exit
  end if
 end if  
 ls_org_tmp = right(ls_org_tmp,len(ls_org_tmp) - (pos(ls_org_tmp,astr_split) + li_split_len))
loop


return ls_rtn

你可能感兴趣的:(value)