Copy() //like mid() for VB,like SubString for SQL Server

解决方案 »

  1.   

    leftstring
    rightstring
    midstring
      

  2.   

    用pos()还可以找出字串的位置,才加上copy()就完美了,哈哈
      

  3.   

    function Copy(S; Index, Count: Integer): string;
      

  4.   

    copy(原字符串,pos(位置),长度)
      

  5.   

    copy,pos,delete,加号,可以做到一切对字符串的操作
      

  6.   

    function Copy(S; Index, Count: Integer): string;piip
      

  7.   

    帮助文件里的例子!也许你会有用!
    procedure TForm1.ComboBox1KeyPress(Sender: TObject; var Key: Char);var
      Found: boolean;
      i,SelSt: Integer;
      TmpStr: string;
    begin
      { first, process the keystroke to obtain the current string }
      { This code requires all items in list to be uppercase}
      if Key in ['a'..'z'] then Dec(Key,32); {Force Uppercase only!}
      with (Sender as TComboBox) do
      begin
        SelSt := SelStart;
        if (Key = Chr(vk_Back)) and (SelLength <> 0) then
         TmpStr := Copy(Text,1,SelStart)+Copy(Text,SelLength+SelStart+1,255)    else if Key = Chr(vk_Back) then {SelLength = 0}
         TmpStr := Copy(Text,1,SelStart-1)+Copy(Text,SelStart+1,255)
        else {Key in ['A'..'Z', etc]}
         TmpStr := Copy(Text,1,SelStart)+Key+Copy(Text,SelLength+SelStart+1,255);
        if TmpStr = '' then Exit;
        { update SelSt to the current insertion point }    if (Key = Chr(vk_Back)) and (SelSt > 0) then Dec(SelSt)    else if Key <> Chr(vk_Back) then Inc(SelSt);
        Key := #0; { indicate that key was handled }
        if SelSt = 0 then 
        begin
          Text:= '';
          Exit;
        end;   {Now that TmpStr is the currently typed string, see if we can locate a match }    Found := False;
        for i := 1 to Items.Count do
          if Copy(Items[i-1],1,Length(TmpStr)) = TmpStr then
          begin
            Text := Items[i-1]; { update to the match that was found }
            ItemIndex := i-1;
            Found := True;
            Break;
          end;
        if Found then { select the untyped end of the string }
       begin
          SelStart := SelSt;
          SelLength := Length(Text)-SelSt;    end
        else Beep;
      end;
    end;