S:='83007777你好我就好咯';
请问我怎么检查到S中是含有汉字的字符串?
用delphi检测呢

解决方案 »

  1.   


    if   Length(WideString(Edit1.Text))   <>   Length(Edit1.Text)   then   
              ShowMessage("有汉字")   
      

  2.   


    if   Length(WideString(Edit1.Text))   <>   Length(Edit1.Text)   then   
              ShowMessage('有汉字')  
      

  3.   

    嘿,自己写了个读汉字的函数
    function GetChinese(s: string): string;
    var
      ss,t:widestring;
      i,l:integer;
      str1:string;
      ret:string;
    begin
      result:='';
      t:=widestring(s);
      l:=length(s);
      if l=0 then exit;
      for i:=1 to l do
      begin
        ss:=copy(t,i,1);
        str1:=widechartostring(pwidechar(ss));
        if length(str1)=2 then
          ret:=ret + str1;
      end;
      result:=ret;
    end;
      

  4.   

    嘿,自己写了个读汉字的函数
    function GetChinese(s: string): string;
    var
      ss,t:widestring;
      i,l:integer;
      str1:string;
      ret:string;
    begin
      result:='';
      t:=widestring(s);
      l:=length(s);
      if l=0 then exit;
      for i:=1 to l do
      begin
        ss:=copy(t,i,1);
        str1:=widechartostring(pwidechar(ss));
        if length(str1)=2 then
          ret:=ret + str1;
      end;
      result:=ret;
    end;
      

  5.   

    csdn回帖不爽,第一次发反应不过来,再点,然后就回了两个了
      

  6.   

    真是奇怪,CsDn是不是有问题,总发不了贴,发了也没有显示
      

  7.   


    function GetChineseString(S: String): String;
    var
      t : WideString;
      i : Integer;
    begin
      Result := '';
      t := WideString(S);
      for i := 1 to Length(t) do
        if ord(t[i]) > 255 then Result := Result + AnsiString(t[i]);
    end;procedure TForm1.Button1Click(Sender: TObject);
    begin
      ShowMessage (GetChineseString('123中国456欢迎Hello'));
    end;