如何使用随机空格分隔符拆分此字符串?

时间:2019-01-28 06:16:36

标签: python python-3.x

我正在从日志文件中提取表信息,预期结果是具有4个字段的csv文件。

日志文件中的表条目由空格分隔。但是,某些表条目是句子,因此不能使用使用str.split()。此外,某些表条目仅用1个空格分隔。

我已经尝试过str.split()re.split(r'\s{2,}', line),但是第4字段上的条目被分成许多单元格,因为条目是句子

with open(openfile) as datafile:
    for line in datafile: 
        if command in line:
            for line in datafile:
               if endcommand in line:
                    break
               else:
                    splitted = re.split(r'\s{2,}', line)
                    wr = csv.writer(resultFyle, dialect='excel')
                    wr.writerow(splitted)

预期结果是:

['Serial0/0','Up','Up','This leads to somewhere']

实际结果是:

['Serial0/0','Up','Up','This', 'leads', 'to', 'somewhere']

1 个答案:

答案 0 :(得分:0)

如注释中所建议,如果数据是持久性的,则可以使用maxsplit参数。

splitted = re.split(r'\s{2,}', line, 3)