说明:本函数作用是截取指定英汉混合字符串,并保持显示长度一至。就是将一个汉字当两英文来截取。 用途:一般会用在标题显示列表,可以避免截取的字符串参插不齐的现象。 程序代码 复制代码 代码如下: "//A_strString要处理的字符串 "//A_intLen以英文字符数为准 "//A_strAddString如果A_strString有截取字符时添中的后缀,如:...,可以为空 function CutString(byval A_strString,byval A_intLen,byval A_strAddString) dim MM_objRe,MM_objMs,MM_objMh dim MM_strCut,MM_intLen set MM_objRe=new RegExp MM_objRe.Global=true"全局搜索 MM_objRe.IgnoreCase=true"不区分大小写 MM_objRe.Pattern="[^x00-xff]"
MM_intLen=A_intLen if len(A_strString)<=A_intLen then MM_strCut=A_strString else MM_strCut=left(A_strString,MM_intLen) set MM_objMs=MM_objRe.execute(MM_strCut) if MM_objMs.count<>MM_intLen then for each MM_objMh in MM_objMs if MM_objMh.FirstIndex<MM_intLen then MM_intLen=MM_intLen-1 else exit for end if next else MM_intLen=MM_intLen/2 end if MM_strCut=left(A_strString,MM_intLen) & A_strAddString end if CutString=MM_strCut set MM_objRe=nothing end function