我試着替換髮現的文本遞歸,但我不能讓它工作。 這將只更換1'a'字符每個'text'之前,但我想文本之前替換所有'a'字符德爾福遞歸函數替換字符串
//Declared recursive function
function OneLine(s:WideString):WideString;
begin
s:=StringReplace(s,'atext', 'text', [rfReplaceAll]);
if (Pos(Result,'atext')>0) then
begin
//XMLstring:=Result;
s:=OneLine(XMLstring);
end
else
begin
Result:=XMLstring;
end;
end;
//--Here begins program
Var
t:string
Begin
//exaple of text
//we need replace all 'a' before 'text' only
t:='aaHaaatextaaaatextHHaatextHHaaaa';
//call custom recursive function
t:=OneLine(t);
ShowMessage(t);
End.
我需要替換這樣的:「aaHaaatextaaaatextHHaatextHHaaaa」
最終文本應該看起來像這一點: 'aaHtexttextHHtextHHaaaa'
閱讀「Pos」的文檔,第一個參數是您要搜索的字符串。然後在同一行放置一個斷點,並檢查斷點被命中時「結果」保存的內容。 –
你應該使用一個和如果內部,你會很容易地解決你的問題;) –
什麼是XMLString?複製並粘貼您的真實代碼。 –