if bytetype(form1.Edit1.Text,1)=mbLeadByte then showmessage('汉字'); 判断edit1中第一个字符是不是汉字
方法很多啊,我也给一个,自己组合组合var ss:string; i,k:integer; begin ss:='dephi很牛*'; i:= Length(ss); for k:=1 to i do begin if ByteType(ss,k)=mbSingleByte then showmessage('第'+inttostr(k)+'是字母') else begin showmessage('第'+inttostr(k)+'是汉字'); //k:=k+1; end; end;var ans : AnsiString; wis : WideString; sub : Integer; //汉字的个数 Begin ans := '盗版中国矿大delphi北京'; wis := WideString( ans ); sub := Length( ans ) - Length( wis ); showmessage(inttostr(sub)); End;
procedure TForm1.Button1Click(Sender: TObject); var str:string; s:widestring; i:integer; begin s:='汉字aaaa组bb合ssss测cccc试'; str:=s; for i:= 1 to Length(trim(str)) do begin str:=s[i]; if length(str) > 1 then showmessage('第' + inttostr(i)+ '是汉字:' + s[i] ); end; end;
showmessage('汉字');
判断edit1中第一个字符是不是汉字
ss:string;
i,k:integer;
begin
ss:='dephi很牛*';
i:= Length(ss);
for k:=1 to i do
begin
if ByteType(ss,k)=mbSingleByte then
showmessage('第'+inttostr(k)+'是字母')
else
begin
showmessage('第'+inttostr(k)+'是汉字');
//k:=k+1;
end;
end;var
ans : AnsiString;
wis : WideString;
sub : Integer; //汉字的个数
Begin
ans := '盗版中国矿大delphi北京';
wis := WideString( ans );
sub := Length( ans ) - Length( wis );
showmessage(inttostr(sub));
End;
var str:string;
s:widestring;
i:integer;
begin
s:='汉字aaaa组bb合ssss测cccc试';
str:=s;
for i:= 1 to Length(trim(str)) do
begin
str:=s[i];
if length(str) > 1 then
showmessage('第' + inttostr(i)+ '是汉字:' + s[i] );
end;
end;