1

我有一个多行字符串,我想从中删除一些行。TMemo 组件包含执行此操作所需的代码。

MyMemo:=TMemo.Create(nil);
try
   MyMemo.Text:=MyString;
   MyMemo.Lines.Delete(x); // lines I want to delete
   MyMemo.Lines.Delete(y);
   MyString:=MyMemo.Text;
finally
   MyMemo.Free;
end;

但是使用可视化组件进行基本转换似乎是错误的。有没有不同但同样简单的方法来做到这一点?谢谢

4

2 回答 2

5

您在问题标题中有正确的答案 - 使用TStringList

procedure MyProcedure(var MyString: string);
var
  sl: TStringList;
begin
  sl := TStringList.Create;
  try
    sl.Text := MyString;
    sl.Delete(x); // lines I want to delete
    sl.Delete(y);
    MyString := sl.Text;
  finally
    sl.Free;
  end;
end;
于 2017-04-11T11:18:21.123 回答
0

我刚刚意识到 TStringlist 本身有一个 Text 属性。所以这回答了我自己的问题。

于 2017-04-11T11:21:35.643 回答