现在的位置: 首页 > 综合 > 正文

将字符串尽量平均分成等长度的子字符串,且不受中文字影响

2013年10月11日 ⁄ 综合 ⁄ 共 707字 ⁄ 字号 评论关闭

*!*     作者:十豆三
*!*     日期:2011-12-26
*!*  vfp版本:vfp9.0(SP2 7423)
*!* 操作系统:Windows XP(SP3)
*!*     功能:将字符串尽量平均分成等长度的子字符串,且不受中文字影响
*!*     参数:tcStr ==> 要做分割的字符串,tnLen ==> 想分成的长度


*-- 如:
?CUT_STR('枸缘酸他莫昔芬/10mg*100s/上海制药一厂',20)
?CUT_STR('一二三四五六七八九十1234567890123456789一二三四五六七八九十',20)
?CUT_STR('1234567890123456789012345',20)


Function CUT_STR
    Parameters tcStr,tnLen
   tcStr=
Alltrim(tcStr)
    Local lcRetStr
   lcRetStr=''
    Do While !Empty(tcStr)
        If Between(Asc(Rightc(Left(tcStr,tnLen),1)),128,255)
           lcRetStr=lcRetStr+
Chr(10)+Left(tcStr,tnLen-1)
           tcStr=
Substr(tcStr,tnLen)
        Else
            lcRetStr=lcRetStr+Chr(10)+Left(tcStr,tnLen)
           tcStr=
Substr(tcStr,tnLen+1)
        Endif
   Enddo
Return Substr
(lcRetStr,2)
Endfunc

抱歉!评论已关闭.