这是delphi的代码:
MyWord.Selection.SetRange(Start:=0, End:=0);
MyWord.Selection.Find.Execute(FindText := '[{]*[}]', MatchWildcards := true);
while MyWord.Selection.Find.Found do
begin
DocText := MyWord.Selection.Text;
DocText := Copy(DocText, 2, Length(DocText) - 2);
EndText.Clear;
MacroToData(DocText, EndText);
ReplaceText := '';
for jLoop := 0 to EndText.Count - 1 do
ReplaceText := ReplaceText + EndText.Strings[jLoop] + #15; // 用 #15 先代替回车
if ReplaceText <> '' then
ReplaceText := Copy(ReplaceText, 0, Length(ReplaceText) - 1); // 把最后一个 #15 去掉
MyWord.Selection.Text := ReplaceText;
MyWord.Selection.SetRange(Start:=0, End:=0);
MyWord.Selection.Find.Execute(FindText := '[{]*[}]', MatchWildcards := true);
end;
MyWord.Selection.Find.Text := #15;
MyWord.Selection.Find.Replacement.Text := '^p';
MyWord.Selection.Find.Execute(Replace:=wdReplaceAll, Forward:= True, Wrap := wdFindContinue, MatchWildcards := false); |