X xianjun Unregistered / Unconfirmed GUEST, unregistred user! 2003-05-23 #2 字符串S中包括的汉字个数 = Length(S) - Length(WideString(S))
L lvxq Unregistered / Unconfirmed GUEST, unregistred user! 2003-05-23 #3 var str1:String; str2:WideString; ..... str1:=Edit1.Text; str2:=str1; //转成wideString,这样在length函数时,将返回byte ShowMessage('Bytes:='+IntToStr(Length(str2))+' --Length:=' +IntToStr(Length(str1)) ); //比较上面两个信息,你就可以知道了,如果有汉字,他们的值会不一样,到底 有几个汉字,我想你自己会算了吧?
var str1:String; str2:WideString; ..... str1:=Edit1.Text; str2:=str1; //转成wideString,这样在length函数时,将返回byte ShowMessage('Bytes:='+IntToStr(Length(str2))+' --Length:=' +IntToStr(Length(str1)) ); //比较上面两个信息,你就可以知道了,如果有汉字,他们的值会不一样,到底 有几个汉字,我想你自己会算了吧?
飘 飘_风 Unregistered / Unconfirmed GUEST, unregistred user! 2003-05-23 #4 写个函数,扩展性更强。代码如下: Function GetCount(Str:String):Integer; Var Count,I,Len:Integer; begin Len:=Length(Str); Count:=0; I:=1; While I<=Lendo begin If Str[Index]>#127 then Index:=Index+2 Inc(WordCount); end; Result:=Count; end;
写个函数,扩展性更强。代码如下: Function GetCount(Str:String):Integer; Var Count,I,Len:Integer; begin Len:=Length(Str); Count:=0; I:=1; While I<=Lendo begin If Str[Index]>#127 then Index:=Index+2 Inc(WordCount); end; Result:=Count; end;
B bowen_202 Unregistered / Unconfirmed GUEST, unregistred user! 2003-05-23 #5 字符串S中包括的汉字个数 = Length(S) - Length(WideString(S))
L lightstar Unregistered / Unconfirmed GUEST, unregistred user! 2003-06-03 #6 通过判断字符串中每一个字符是否大于#127可辨别汉字。 以上通过length来判断汉字个数可能会不准确,因为汉字的length为2,所以Leng(汉字字符)/2才是汉字个数。可以在每判断一个字符为汉字后,用一个变量来计数,从而获取汉字个数。
通过判断字符串中每一个字符是否大于#127可辨别汉字。 以上通过length来判断汉字个数可能会不准确,因为汉字的length为2,所以Leng(汉字字符)/2才是汉字个数。可以在每判断一个字符为汉字后,用一个变量来计数,从而获取汉字个数。