出於某種原因,使用德爾福SEARCHTEXT問題
SearchText := 'Program Files';
ReplaceText := 'Program Files (x86)';
SearchAndReplace(SearchText, ReplaceText);
會什麼都不做,它只是將不會更改文本,使用其他任何文本時工作正常。
這是某種「保留」字嗎?或()是什麼讓它不起作用?
procedure Tfc_Great.SearchAndReplace
(InSearch, InReplace: string) ;
var X, ToEnd : integer;
oldCursor : TCursor;
begin
oldCursor := Screen.Cursor;
Screen.Cursor := crHourglass;
with RichEdit1 do
begin
X := 0;
ToEnd := length(Text) ;
X := FindText(inSearch, X, ToEnd, []) ;
while X <> -1 do
begin
SetFocus;
SelStart := X;
SelLength := length(inSearch) ;
SelText := InReplace;
X := FindText(inSearch,
X + length(InReplace),
ToEnd, []) ;
end;
end;
Screen.Cursor := oldCursor;
end;
您正在使用的德爾福的版本? – 2009-09-28 12:00:37
更廣泛的背景是什麼?我從來沒有聽說過SearchAndReplace函數,我找不到任何helpfile條目。這是組件的一部分嗎?我通常使用StringReplace進行搜索和替換操作。 – 2009-09-28 12:10:10
我不明白。你打算修改哪個字符串? – 2009-09-28 12:10:35