你好,我正在尝试解析像“2.2.2.2-22”这样的字符串 在使用 python re.findall 函数时,我得到了两组: 我不明白 RE 有什么问题:
re.findall(r"([\d.]+(-\d+)?)", "2.2.2.2-22")
这给我的结果是:[('2.2.2.2-22', '-22')] 我不要第二组。我怎样才能解决这个问题?
最佳答案
要避免分组,您可以使用 ?:
>>> import re
>>> re.findall(r"([\d.]+(?:-\d+)?)", "2.2.2.2-22")
['2.2.2.2-22']
它会强制该组存在,但不会捕获并返回值。
关于python - 如何避免在正则表达式中分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40923098/