Delphi delphi 学习大师QQ群讨论的字符串位置替换方法


本文整理自网络,侵删。

 

感谢各位大师的倾囊相授 QQ群682628230

叫兽叔叔(378464060)  12:14:13

var str,str2,STR3:string;
begin
   str := '12345678';
   str2 := Copy( str,1,Length(str)-2)+'XXXX'  ;
   STR3 :=  Copy( str,Length(str)-2+2,2-1) ;
   str2 :=str2+ STR3 ;
   ShowMessage(str2);
end;

叫兽叔叔(378464060)  12:14:23
2代表位置。

 

 

 

 

叫兽叔叔(378464060)  12:24:11
var str,str2,STR3:string;
i:Integer;
begin
   str := '12345678';
   for i := 1 to Length(str) do
   begin
    if i=Length(str)-2+1 then
    str2 := str2+'xxx'
    else
    str2 := str2+str[i]

   end;
   ShowMessage(str2);
end;

叫兽叔叔(378464060)  12:24:37
方法千万,,总体来说COPY,MOVE 效率会高点。。

 

 

 

叫兽叔叔(378464060)  12:14:27
用COPY

 

 

 

河南-风 delphi学习网(16643506)  12:22:02
var
  Str:string;
  PosX:integer;
  AStr:String;
  ALen:Integer;
begin
   str:='字符串12345678';  //源字符串
   PosX:=Length(str);   //要替换的位置
   AStr:='XYZ' ;          //要替换的字符串
   ALen:= Length(str);
   if PosX<=ALen then
   begin
    Str:=LeftStr(str, ALen-PosX)  +AStr+RightStr(str, PosX-1);//
    Edit1.Text:=str;
   end;
end;

 

 

更高效的:


uses StrUtils ;
procedure TForm1.Button1Click(Sender: TObject);
var
  Str:string;
  PosX:integer;
  AStr:String;
  ALen:Integer;
  I:integer;
  T1,T2:Integer;
begin
   str:='字符串12345678';  //源字符串
   PosX:=3;   //要替换的位置
   AStr:='XYZ' ;          //要替换的字符串
   T1:=GetTickCount;
   for I := 0 to 100000 do
   begin
      ALen:= Length(str);
     if PosX<=ALen then
     begin
      Str:=LeftStr(str, ALen-PosX)  +AStr+RightStr(str, PosX-1);//
      //Edit1.Text:=str;
     end;
   end;
   T2:=GetTickCount;
   Button1.Caption:=IntToStr(T2-T1);

end;

相关阅读 >>

Delphi 获取鼠标与键盘空闲时间

Delphi 隐藏 tpagecontrol 的标签方法

Delphi 关闭rtti反射机制减少exe文件尺寸

Delphi 颜色转换函数: 从 Delphi 到 html

Delphi的webbrowser改造,对网页中alter等对话框的改造方法

Delphi unigui获取连接的客户端列表

Delphi startcount() 时间计数器

Delphi 内存管理[5]

Delphi 关于rs485总线通信协议开发注意事项

Delphi copyfileprogressbar 拷贝文件显示进度条

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...