比如说一个数:
    123456我要从右往左截取字符。从右边数第二个字符开始截取所有字符。得到结果如下:12345
例:12020908   得到结果:1202090请问在delphi中如何实现。谢谢大家。.

解决方案 »

  1.   

    function CurString(str: string): string;
    begin
      Result := Copy(str, 1, Length(str) - 1);
    end;
      

  2.   

    const
      ReservedCount =  1;//保留字符个数
    ShowMessage(LeftStr(str,Length(str) - ReservedCount ));
      

  3.   

    function getchar(x:Cardinal;Y:Cardinal;Source:string):string; //x为从那个字符开始 Y为截取的长度,Source为字符串
    var
    strlen:Cardinal;
    begin
    strlen:=Length(Source);
    Result:=RightStr(Source,(strlen-x));//这里就可以截取到从X个字符开始到字符串未尾的全部字符
    Result:=Leftstr(Result,Y);//这里就可以截取到从x那个字符开始 Y为截取的长度,的字符串end;
      

  4.   

    uses StrUtils;mmoList.Text := RightStr('123456', 2);
      

  5.   

    uses StrUtils;function getstr(str:string;start,count:integer):string;
    begin
    result:=ansiminstr(str,length(str)-start-count,count);
    end;
      

  6.   

    从右侧截取任意字符,同Copy用法正好相反
    function CopyR(S: string; Index, Count: Integer): string;
    begin
      result := Copy(S, Length(S) - Index - count + 2, count);
    end;
      

  7.   

    截去最后N个字符
    function mgetstr(str:string;n:integer):string;
    begin
      result:=delete(str,length(str)-n+1,n);
    end;
      

  8.   

    就用copy啦,只是换下 index 自己计算一下就好啦。哎。
    没经历折腾啦。