读书人

请问 python 处理字符串

发布时间: 2012-11-21 08:23:26 作者: rapoo

请教 python 处理字符串
一个文本文件
格式如下

字段1 字段2:字段3 字段4:字段5 字段6 字段7
字段8

字段1 字段2:字段3 字段4:字段5 字段6 字段7
字段8

....


样例
1 a:0 b:35 10 s
0000

2 a:55 b:35 10 s
00001111


字段1与字段2之间为两个空格分割
字段2与字段3之间为一个:分割
字段7与字段8之间为两个空格和一个\n分割

两个数据块之间为双\n\n分割

请问用python提取这8个字段的内容,该怎么写?感激不尽...

[解决办法]

Python code
#!/usr/bin/pythondef line_split(lines):    import re    lines = re.sub('\n', '', lines)    return re.split('\s+|:', lines)with open('test.txt') as fd:    lines = ''    for line in fd:        if line == '\n':            print line_split(lines)            lines = ''        else:            lines += line    if len(lines):        print line_split(lines) 

读书人网 >perl python

热点推荐