我用Python处理这些数据,它的前四个字段用“|”分隔,第五个字段用空格分隔
VER:1|long=|lat=|device=D3052|eventid=31007311 status=Active time=1528496310749 priority=1 desitnationHost= group=cluster1
VER:1|long=|lat=|device=D3010|eventid=31007312 status=Active time=1528496310765 priority=1 desitnationHost= group=cluster1
VER:1|long=|lat=|device=D3094|eventid=31007313 status=Active time=1528496315380 priority=1 desitnationHost= group=cluster1
VER:1|long=|lat=|device=D3052|eventid=31007314 status=Active time=1528496317513 priority=1 desitnationHost= group=cluster1
VER:1|long=|lat=|device=D3010|eventid=31007315 status=Active time=1528496329604 priority=1 desitnationHost= group=cluster1
时间字段包含历元时间值,需要将该值更新1年
该数据包含在目录中的多个文本文件中,需要逐行读取每个文本文件进行处理
我的Python方法-
#import required python library
import os
import re
#read a text file (later need to loop through multiple text files)
h = open('C:/directory/new_1.txt', 'r')
# Reading from the file
content = h.readlines()
# Iterating through the content
# Of the file
for line in content:
milli_second_in_year = 31536000000
l = re.sub(r'time=(\d+)',r'\1d','milli_second_in_year')
print(l)
在我的上述方法中,我无法将提取的时间值与“年内毫秒”相加。
我尝试了以下更改,但无法获得预期的输出-
for line in content:
m = re.search(r'time=(\d+)',line)
match = m.group(1)
match = int(match)+31536000000
print(match)
正在获取所需的时间值,无法再次写回文件
预期输出(更新的时间值)——
VER:1|long=|lat=|device=D3052|eventid=31007311 status=Active time=1560032310749 priority=1 desitnationHost= group=cluster1
VER:1|long=|lat=|device=D3010|eventid=31007312 status=Active time=1560032310765 priority=1 desitnationHost= group=cluster1
VER:1|long=|lat=|device=D3094|eventid=31007313 status=Active time=1560032315380 priority=1 desitnationHost= group=cluster1
VER:1|long=|lat=|device=D3052|eventid=31007314 status=Active time=1560032317513 priority=1 desitnationHost= group=cluster1
VER:1|long=|lat=|device=D3010|eventid=31007315 status=Active time=1560032329604 priority=1 desitnationHost= group=cluster1
如果我正确理解了您想要做的事情,您可以这样做:
有几件事需要注意:
with open...
)可确保文件始终正确关闭readlines
-您只需使用文件句柄在行上迭代即可re.sub
的使用不正确-如果您想使用它,请查阅文档(我没有在这里)以下是将覆盖同一文件的版本:
相关问题 更多 >
编程相关推荐