python docx 替换段落中的蚊子
时间: 2025-01-25 18:47:27 浏览: 47
### 使用 `python-docx` 库替换 Word 文档段落中的指定文字
为了在 Python 中使用 `python-docx` 替换 Word 文档段落中的特定文本,可以通过遍历文档中的所有段落并检查其中的内容来实现这一目标。下面提供了一个具体的例子,展示了如何将文档正文中所有的“11”替换成“22”,而不会影响到表格内的内容。
```python
from docx import Document
def replace_text_in_paragraphs(doc, old_text, new_text):
""" 遍历文档的所有段落,并将old_text替换为new_text """
for paragraph in doc.paragraphs:
if old_text in paragraph.text:
inline = paragraph.runs
# 创建一个新的列表以保存新的runs
runs = []
for run in inline:
text = run.text.replace(old_text, new_text)
runs.append(text)
# 清除旧的run对象并将新文本添加回去
paragraph.clear()
for text in runs:
paragraph.add_run(text)
# 打开现有的Word文档
document = Document('example.docx')
replace_text_in_paragraphs(document, '11', '22')
# 保存修改后的文档
document.save('modified_example.docx')
```
上述代码通过定义函数 `replace_text_in_paragraphs()` 来处理段落级别的文本替换操作[^1]。此方法会迭代整个文档中的每一个段落,并针对每个段落内部的具体运行(run)执行字符替换工作。完成更改后重新构建这些段落,从而达到只改变正文而不干扰其他元素的效果。
阅读全文
相关推荐


















