2017-10-16 31 views
0

我有一个由外部程序生成的日志文件我无法控制由一个由空格分隔的键值对组成的日志文件,我无法找到解析该日志的简单方法。例如,一条线将包含类似将日志文件行转换为字典

time="2017-10-03T15:13:34Z" level=info msg="Some information message" 
time="2017-10-03T15:13:35Z" level=warn msg="Some basic message" err="More details on error" 

我不能因为字符串的空间分割,我不完全知道如何处理这种使用正则表达式,因为不是一切都在引号包围。

是否有一种简单的方法将单行转换为字典(或JSON)?

+1

可能的重复[从Python中的空间分隔的键=值字符串创建字典](https://stackoverflow.com/questions/4764547/creating-dictionary-from-space-separated-key-value-string-in-蟒蛇) – DaveBensonPhillips

+0

@DaveBensonPhillips对不起,我没有看到我的建议。感谢您的领导! –

回答

1

您可以使用shlex.split函数来保留引号内的空格。

+0

工程很棒,不知道图书馆里有这个。非常感谢,我会尽我所能接受答案。 –