我有一个多行字符串,我想从中删除一些行。 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;
但是使用可视组件进行基本转换似乎是错误的。有没有不同但同样简单的方法呢? 感谢
答案 0 :(得分: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;
答案 1 :(得分:0)
我刚刚意识到TStringlist本身有一个Text属性。所以这回答了我自己的问题。