注册 登录
编程论坛 Delphi论坛

DELPHI 中 字符替换问题

web1269 发布于 2011-01-12 16:32, 501 次点击
比如:55551234567891555  我想把前面的1和后面的1中间部分替换成别的比如22222222222222 ,但不替换1和1前面的和1后面的5555如何写
大体意思就是只替换中间1与1之间的文字
1 回复
#2
shuang2009112011-01-13 23:37
procedure TForm1.btn1Click(Sender: TObject);
var
  SourceString, TempString: string;
  StartIndex, EndIndex: Integer;
begin
  SourceString := '55551234567891555';
  StartIndex := Pos('1', SourceString);
  TempString := Copy(SourceString, StartIndex + 1, MaxInt);
  EndIndex := Pos('1', TempString);
  TempString := Copy(SourceString, StartIndex + 1, EndIndex - 1);
  TempString := StringReplace(SourceString , TempString, '22222222222222', [rfReplaceAll, rfIgnoreCase]);
  edt1.Text := TempString;
end;
1