有人能帮我解决这个问题吗?你知道吗
我有以下原始文本文件:
============================
Line of text
Line 3: Port #: 12; Type: 5000AX-FG;
============================
- - Stage 1 - -
Duration: 0 hrs 0.60 min. Total Elapsed Time: 0 hrs 0.60 min.
Status: Done
...
- - Stage 8 - -
Line 66: Duration: 11 hrs 48.0 min. Total Elapsed Time: 16 hrs 35.6 min.
Line 67: Status: Done
我想分析类型(5000AX-FG)、阶段8的持续时间和阶段8的状态。我的脚本将通过多个文件以及。我的问题是我很难理解regex模块在Python中是如何工作的。我很难把它应用到我的情况。任何建议都将不胜感激。你知道吗
到目前为止,我掌握的情况如下:
#!/usr/bin/python
import glob
import re
import csv
list_of_files = glob.glob('*06*.rpt')
for fileName in list_of_files:
f=open(fileName, 'r')
print f
for i, line in enumerate(f):
if i == 2:
print line
elif i == 65:
print line
elif i == 66:
print line
f.close()
如果您不理解regexp,并且不愿意学习它们,就不要使用它们。如果没有它们,这是很容易解析的。你知道吗
要分析的第一行是:
在英语中,您要做的是:
很明显,您可以重新排列它们,将其中一些组合成一个步骤,等等,但是让我们直接将其转换为Python:
如果你想变得更聪明一点,注意线条中的图案,并用它们来分割。例如,在这一行以及所有类似的行中:
它们都以
"Line NN: "
开头。之后,会有一个或多个键值对,这些键值对之间用句点和可选空格分隔,每个键值之间用冒号和可选空格分隔。所以:"Line NN: "
部分。你知道吗'.'
上拆分:
周围正好分成两块。你知道吗你可以进一步推广它,把所有的键值对做一个dict,然后你就可以在dict中查找你想要的一个
例如:
现在:
像这样的?你知道吗
相关问题 更多 >
编程相关推荐