如何对文字进行分析区别中文和英文字符再分别在他们面前加上特殊符号,繁体转化为简体

解决方案 »

  1.   

    var a : word ;
        dd :string ;
        i: integer ;
    begin
      dd := '我是天上一片去asdfg';
      for  i:= 0 to length(widestring(dd)) do
      begin
       if length(String(Copy(widestring(dd),i,1))) >1 then
        Application.MessageBox('中文','',0)
       else
         Application.MessageBox('英文','',0);  end ;
    第二个问题,有关字库, 不是一下子解决的
      

  2.   

    function ByteType(const S: string; Index: Integer): TMbcsByteType
    bytetype 它可以判断一个字符串中,某个 Char 是单个字母,还是双字节的前一位或后一位。mbSingleByte 单字母mbLeadByte 双字节第一位mbTrailByte 双字节第二位
      

  3.   

    var a : word ;
        dd :string ;
        i: integer ;
    begin
      dd := '我是天上一片去asdfg';
      for  i:= 0 to length(widestring(dd)) do
      begin
       if length(String(Copy(widestring(dd),i,1))) >1 then
        Application.MessageBox('中文','',0)
       else
         Application.MessageBox('英文','',0);  end ;
      dd是用户可以随意加入的文字,在中文和英文字符再分别在他们面前加上特殊符号,是<中文>+(用户的输入文字),
    <英文>+(用户输入的文字)
      

  4.   

    繁体转化为简体 复杂点。字库对应才能解决,否则就不需要‘南极星’这些转换内码的软件了。猜测:
    你是否在做一些财务方面的软件,要将123或者一二转换成 壹 贰 叁,
    如果是这样的话,写一个小的函数就可以了。if copy(string1,1,1)='一' then result:='壹';
      

  5.   

    RE  MichealLee() 
    猜测错误,楼主要作的是万能语言播放器,不是这么个简单判断就能解决的