【发布时间】:2014-11-14 17:23:23
【问题描述】:
我正在使用 PHPDocx 查找和替换 word 文档中的句子,但它不适用于任何包含 ' 或 " 的字符串。我尝试转义这些字符但没有运气。有什么想法吗?
例如:
You’re being enrolled today.
不会被替换,但是
You are being enrolled today.
会正常工作。
【问题讨论】:
-
你能显示一些代码吗?
我正在使用 PHPDocx 查找和替换 word 文档中的句子,但它不适用于任何包含 ' 或 " 的字符串。我尝试转义这些字符但没有运气。有什么想法吗?
例如:
You’re being enrolled today.
不会被替换,但是
You are being enrolled today.
会正常工作。
【问题讨论】:
我认为这可能是因为文本被分成许多标签,例如您的文本看起来像这样:
<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
【讨论】: