我写了一个简单的脚本来扫描目录中的文件类型(.htm),打开它们。并替换一些文字。这个脚本在我的家用计算机上工作正常(Python 2.7.12),但在我的工作计算机上却没有(Python 2.7.8),我无法弄清楚原因。它根本找不到任何匹配。它正在查看的文件是相同的格式,编码等。
表达式是:
core = re.compile(r'(.*?)(FeatureCatalogue_Core_v??4\.\d_20[123]\d-??[01]\d-??[0123]\d)(.*?)')
“FeatureCatalogue_Core_v4.4_2016-12-31”应匹配
“FeatureCatalogue_Core_4.4_20161231”应匹配
“FeatureCatalogue_Core_v5.0_2017-12-31”不应与
匹配我确信我错过了一些简单的东西,或者我的表情不太正确,但我看不出来。
答案 0 :(得分:0)
我解决了这个问题。它实际上是找到匹配。我的“休息”状态无效。我通过使用计数器想出了一个解决方案,所以在经过如此多的成功尝试后,它会破裂。
for x,y,z in os.walk(pathTRD):
for doc in z:
Path = os.path.join(x,doc)
if Path.endswith('.htm'):
dataR = open(Path, 'r')
filedata = dataR.read()
dataR.close()
for line in filedata.split(None):
for q in Qs:
mtch = re.match(q, line)
try:
Keys1.append(str(mtch.group(2)))
winLoop += 1
except:
pass
if winLoop > 6:#<--- this isn't how wanted to do this, but the work computers are being dumb
break
seekLoop += 1