如何得到一个字符串中的出现中文(不包括中文标点)的最后位置

一个字符串为:中国china
如何得到最后一个中文处的位置:4
---------------------------------------------------------------
*方法一:

LOCAL lcString,P
lcString="中国ch,ina"
P=0
lcString=STRCONV(lcString,2) &&把全角转为半角,即把"中国ch,ina"转为"中国ch,ina"
FOR I=1 TO LEN(ALLTRIM(lcString))
IF ISLEADBYTE(SUBSTR(ALLTRIM(lcString),I,1))
P=I
ENDIF
ENDFOR
MESSAGEBOX("最后一个中文处的位置:"+ALLTRIM(STR(P)),64,"信息提示")

*方法二:

LOCAL lcString,P
lcString="中国ch,ina"
P=0
lcString=STRCONV(lcString,2) &&把全角转为半角,即把"中国ch,ina"转为"中国ch,ina"
FOR I=1 TO LEN(ALLTRIM(lcString))
IF ASC(SUBSTR(ALLTRIM(lcString),I,1))>122
P=I
ENDIF
ENDFOR
MESSAGEBOX("最后一个中文处的位置:"+ALLTRIM(STR(P)),64,"信息提示")

Published At
Categories with 数据库类
Tagged with
comments powered by Disqus