删除分割tex的MS Word XML标记

2024-09-24 02:17:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试使用python正则表达式编辑文本,该正则表达式源自其他人创建的msword文档。文档有需要保留的特定格式和公式。我将.docx文件保存为.xml并用python进行编辑。不幸的是,Word添加了XML标记,这些标记将单词分割开来,并扰乱了我的正则表达式。示例(这是Word输出的格式):

awe</w:t></w:r><w:r w:rsidRPr="00106B67"><w:rPr><w:rFonts w:ascii="Arial" w:hAnsi="Arial" w:cs="Arial"/><w:sz w:val="21"/><w:szCs w:val="21"/></w:rPr><w:t>some

我尝试用正则表达式删除标记,但收效甚微。感谢您的帮助。你知道吗

编辑:解决方案不必合并Python或regex


Tags: 文件文档标记文本编辑格式valxml
1条回答
网友
1楼 · 发布于 2024-09-24 02:17:40

这不是一个真正的正则表达式,但试试这个大小:

s = """awe</w:t></w:r><w:r w:rsidRPr="00106B67"><w:rPr><w:rFonts w:ascii="Arial" w:hAnsi="Arial" w:cs="Arial"/><w:sz w:val="21"/><w:szCs w:val="21"/></w:rPr><w:t>some"""

answer = []
depth = 0
for char in s:
    if char == "<": depth += 1
    elif char == ">": depth -= 1

    if depth: continue
    if char == ">": continue

    answer.append(char)

print(''.join(answer))

相关问题 更多 >