带组的正则表达式解析。为什么最终输出包含额外的元组

时间:2019-02-17 23:51:45

标签: python regex

您好,我正在尝试使用正则表达式组解析字符串。最终输出看起来不错,但列表中有一个多余的元组,为空。我怎样才能解决这个问题。我不明白为什么会这样。

import re

def getRegEx():
    regex = '([-+]*)([\d]*)([a-z]*)([=|<=|>=]*)'
    return regex

equation_1 = '3x<=6+2y+7z'
pattern = getRegEx()
print(re.findall(pattern, equation_1))

Actual result:
[('', '3', 'x', '<='), ('', '6', '', ''), ('+', '2', 'y', ''), ('+', '7', 'z', ''), ('', '', '', '')]

Expected result: 
[('', '3', 'x', '<='), ('', '6', '', ''), ('+', '2', 'y', ''), ('+', '7', 'z', '')]

此问题与一个珍贵的问题不同。我有多个。如果我用加号替换当前的任何*,将不会获得所需的输出。

*

0 个答案:

没有答案