当前版本的python- docx没有search()
功能或replace()
功能。这些请求被相当频繁地请求,但是一般情况下的实现非常棘手,并且尚未达到积压的顶部。
不过,有几个人已经取得了成功,可以使用已经存在的设施来完成所需的工作。这是一个例子。顺便说一句,它与各节无关:)
for paragraph in document.paragraphs:
if 'sea' in paragraph.text:
print paragraph.text
paragraph.text = 'new text containing ocean'
for table in document.tables:
for cell in table.cells:
for paragraph in cell.paragraphs:
if 'sea' in paragraph.text:
...
如果您走这条路,您可能会很快发现复杂性。如果替换段落的整个文本,则将删除任何字符级格式,例如粗体或斜体字或词组。
顺便说一句,@ wnnmaw的答案中的代码适用于python-docx的旧版本,对于0.3.0之后的版本完全不起作用。