我想分割一些行,用字母和数字,但我不能拿出适当的正则表达式。不正确的python正则表达式
行的格式是一样的东西单元=价值+单元,一些例子:
width = 3.45cm
height = 2m
width = 2mm
height = 6.67m
而且我想获取每个名称,值和单位单独的输出,这就是我完成:
line = infoData.readline()
names = []
values = []
units = []
while line:
if "=" in line:
names.append(line[0:line.index("=")])
m = re.search('\d+', line[line.index("="):len(line)])
values.append(int(m.group()))
m = re.search('\D+[^=\n\.]', line[line.index("="):len(line)])
units.append(m.group())
line = infoData.readline()
else:
line = infoData.readline()
是我得到期望的方式它的名字的唯一的事....
感谢Martijn,很好的简短和良好的答案!!,这回答了我有关于如何做到这一点时,我有,例如67或当我有67.23的另一个问题。 – codeKiller
@ user2919052:啊,是的,那是我的部分的一个错误,正则表达式只匹配整数。纠正。 –
太棒了,用你的第一个表情我已经想出了类似的东西,但还是感谢! – codeKiller