1

我正在使用 PHPDocx 查找和替换 word 文档中的句子,但它不适用于任何包含 ' 或 " 的字符串。我尝试转义这些字符但没有运气。有什么想法吗?

例如:

You’re being enrolled today.

不会被替换,但是

You are being enrolled today. 

会正常工作。

4

1 回答 1

1

我认为这可能是因为文本分为许多标签,例如您的文本如下所示:

<w:t>You</w:t>
<w:t>'re being enrolled today</w:t>

这就是为什么很难在 word 中进行适当的搜索/替换的原因之一。

解决此问题的一种方法是将内容写在一行中(例如,不要编辑句子以添加')。

因此,如果您删除该句子并重新编写,我怀疑它可能会起作用。

如果还是不行,你也可以解压你的 docx,然后到 word/document.xml 文件中的那句话,自己修复标签的问题。

如果您根本不想遇到这个问题,您可以使用我为 docx 创建的模板引擎,但可以在 Node.JS 或命令行中使用:https ://github.com/edi9999/docxtemplater

于 2014-12-08T16:51:12.807 回答