zz := ',A,B,C';
想把上面zz里第一个逗号删除掉,是这样做么?好象参数不对哦
midstr(pos(',',zz),length(zz) - 1)

解决方案 »

  1.   

    定义:
    function MidStr(const AText: AnsiString; const AStart, ACount: Integer): AnsiString; 应该这样用:midstr(zz,pos(',',zz),length(zz) - 1) 
      

  2.   

    z :=StrUtils.MidStr(z,pos(',',z),length(z)-1);     
    怎么还是删除不了第一个逗号的?
      

  3.   


    var
     yy:string;
     zz:string;
    begin
       zz:=',A,B,C';
       yy:=MidStr(zz,pos(',',zz)+1,length(zz));
       label1.Caption:=yy;
    end;
      

  4.   

    经测试 返回 A,B,C
      

  5.   

    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls,StrUtils;
      

  6.   


    var
      zz: string;
    begin
      zz := ',A,B,C';
      zz := MidStr(zz, pos(',', zz) + 1, length(zz) - 1);
      ShowMessage(zz);
    end;orvar
      zz: string;
    begin
      zz := ',A,B,C';
      Delete(zz, Pos(',', zz), 1);
      ShowMessage(zz);
    end;
      

  7.   

    Delete(zz, Pos(',', zz), 1); 
    现在我用这个来做
    MidStr上面几位提供的方法本人都测试过了
    对字符串 zz := ',A,B,C'; 操作成功,但为什么对汉字截取时候会失败?
      

  8.   

    楼主 我用汉字可以啊  MidStr主要用于处理含有中文字符的字符串
      

  9.   

    var
     yy:string;
     zz:string;
    begin
       zz:=',你,好,啊,哦,噢,喔';
       yy:=StrUtils.MidStr(zz,pos(',',zz)+1,length(zz));
       label2.Caption:=yy;
    end;想得到效果: 你,好,啊,哦,噢,喔
    测试结果:   你,好,啊,哦,
      

  10.   

    大哥啊 我这里可以全部出来 你把label的width设置长点好不好啊? 把他的autosize改为false 我快崩溃了 
      

  11.   

    非常感谢genispan大虾详细的指导
      

  12.   

    非常感谢genispan大虾详细的指导