[转载] Python_正则表达式匹配Word文档

参考链接: Python中的正则表达式 2(搜索,匹配和查找全部)

使用正则表达式匹配Word文档中的所有字符 

1、原文内容如下: 

 

2、期望得到的结果: 

 

3、源码: 

// 

from docx import Document

import re

 

pattern = re.compile("\d{6}[\u4e00-\u9fff]+") # 正则表达式

# pattern = re.compile("\d{6}[^A-Za-z0-9\!\%\[\]\,\。]+")

doc = Document('./地区码.docx') # 原文件

fo = open('id_area.txt', 'a') # 保存的文件,

for i in doc.paragraphs:# 读取所有的段落

    st = pattern.findall(i.text)# 按正则表达式匹配区号和地名

    for t in st: # 遍历分离的区号和地名

        # print(t)

        txt = t[:6] + ',' + t[6:] + '\n' # 在区号和地名间加上逗号和换行符。

        fo.writelines(txt)# 写入文件

fo.close()

你可能感兴趣的:([转载] Python_正则表达式匹配Word文档)