# -*- coding:UTF8 -*-
import re
import os, sys
#创建临时文件
tmpfile=open('F:/python/路径下所有文件中表名/tmpfile.txt','w')
# 打开待分析脚本路径
path = "E:/XXX/"
dirs = os.listdir( path )
print('文件名','表名')
# 循环路径下所有文件
for file in dirs:
#将文件内容输出到一个字符串
all_the_text =open(path+file,encoding='utf-8').read( )
#匹配“${SJCK_V_ACCESS}.”+匹配字母、数字、下划线。等价于 [A-Za-z0-9_]
pattern = re.compile(r'\$\{SJCK_V_ACCESS\}\.\w*')
#字符串中找到正则表达式所匹配的所有子串,并把它们作为一个迭代器返回
it = pattern.finditer(all_the_text)
for match in it:
#替换字符串中的匹配项,把${SJCK_V_ACCESS}.替换成空
tablename = re.sub(r'\$\{SJCK_V_ACCESS\}\.', "", match.group())
#打印 文件名,表名
print(file,tablename)
#结果追加入临时文件
tmpfile.write(file+" "+tablename + '\n')
#关闭临时文件
tmpfile.close()
#文件内容行去重
list01=[]
for i in open('F:/python/路径下所有文件中表名/tmpfile.txt'):
if i in list01:
continue
list01.append(i)
with open('F:/python/路径下所有文件中表名/resultfile.txt','w') as s:
s.writelines(list01)