这是我要解析的文本文件的模型:
:
我希望在different
之后获取相关信息,例如:22:23:32
和:
。
我知道如何操作的唯一方法是解析每一行并在for line in file:
if re.match("Something", line):
line = line.split(':')
print (str(line[1]))
elif re.match("Date", line):
???
之后拆分。问题是,如果是日期,它会崩溃。
这是我到目前为止编写的代码:
userService
这只是一个简单的例子,我需要解析的文件包含我需要提取的更多信息。
哪种解决方案最有效?
答案 0 :(得分:3)
您需要使用split()
指定限制:
line = line.split(':', 1)
这样,this:that:somethingelse
被解释为['this', 'that:somethingelse']
。
答案 1 :(得分:2)
使用split方法的第二个参数,它可以避免一行中:
的问题,请参阅下面的代码:
for line in file:
data = line.split(':', 1)[1]
print data
str.split([SEP [,maxsplit]])
使用sep作为分隔符,返回字符串中单词的列表 串。如果给出maxsplit,则最多完成maxsplit分割(因此, 该列表最多只有maxsplit + 1个元素。)