我正在使用python从std输入一行文件,并且每行都采用以下格式:
Id:0\t1.0,0.0,83,212,302,475\n
其中\t
代表制表符,\n
代表新行。我想使用python regex
来解析它,并获得一个包含所有字符串数字的列表。
E.g. ['0','1.0','0.0','83','212','302','475']
您能告诉我如何在一行中实现这一点吗?
答案 0 :(得分:2)
my_str = 'Id:0\t1.0,0.0,83,212,302,475\n'
re.findall('[\d\.]+',my_str)
Out[144]: ['0', '1.0', '0.0', '83', '212', '302', '475']
您可以这样做:
[x.strip('Id:\n') for x in re.split('[\t,]',my_str)]
Out[143]: ['0', '1.0', '0.0', '83', '212', '302', '475']
但这有点脆弱(并且难以阅读)