如何在document.xml中保存element.text

时间:2013-12-11 05:54:38

标签: python docx python-docx

我在.docx文档中进行了搜索和替换功能。我使用模块python-docx:

# -*- coding: utf-8 -*-
from docx import *

document = opendocx('test.docx')

TAG_LIST=[u'TAG1',u'TAG2',u'TAG3']
VALUE_LIST=[u'TEST1',u'TEST2',u'TEST3']

def search(document):
    result = False
    for element in document.iter():
        if element.text == '{':
            result=True
        if result and element.text != '}':
            for i in range(0,len(TAG_LIST)):
                if element.text == TAG_LIST[i]:
                     element.text=re.sub(TAG_LIST[i], VALUE_LIST[i], element.text)
                     print(element.text)

search(document)

此功能在{}中查找文档标记,使用TAG_LIST对其进行验证,并替换为VALUE_LIST。我想在element.text功能之后保存re.sub但不知道如何操作。我知道可以读取document.xml的整个文本,然后进行替换,但是将文本加载到缓冲区会占用大量内存。任何想法怎么做?

0 个答案:

没有答案