我有一个功能可以在 word 文档中查找和替换文本占位符。这适用于短文本字符串。但是,当尝试用更大的文本字符串(即一段文本)替换时,什么也不做。
DocReplaceField(ref Word.Document objDoc, string Field, string Value)
{
object missing = System.Reflection.Missing.Value;
Word.Range range = objDoc.Content;
object findtext = Field;
object f = false;
object findreplacement = Value;
object findforward = false;
object findformat = true;
object findwrap = WdFindWrap.wdFindContinue;
object findmatchcase = false;
object findmatchwholeword = false;
object findmatchwildcards = false;
object findmatchsoundslike = false;
object findmatchallwordforms = false;
object findreplace = WdReplace.wdReplaceAll;
range.Find.Execute(
findtext,
findmatchcase,
findmatchwholeword,
findmatchwildcards,
findmatchsoundslike,
findmatchallwordforms,
findforward,
findwrap,
findformat,
findreplacement,
findreplace,
missing,
missing,
missing,
missing);
}
如果我尝试用“Something”替换“[placeholder]”,这可以找到,但是如何用“Something”替换“[placeholder]”
“Nullam non lorem sapien, et imperdiet sapien. Curabitur vestibulum justo eu enim bibendum vulputate. Integer vel velit non elit molestie auctor non ut nisi. Suspendisse potenti. Donec augue nulla, vestibulum a pulvinar id, scelerisque quis mauris. Integer eget ullamcorper velit。 Sed at purus sit amet felis pulvinar dictum at non neque. Praesent laoreet mauris id sem venenatis pellentesque。
例如
更新:
问题似乎是单词的查找和替换不能替换超过 255 个字符。搜索匹配占位符,但实际上无法替换文本。有没有人有调用 find 来定位占位符然后手动选择文本并插入新文本的示例。而不是使用单词查找和替换。