Python正则表达式可用于动态匹配组对象 - python

我正在尝试使用python中的正则表达式从输出中提取一些感兴趣的字段。

假设我的字符串为

Interface1 is down (Administratively down)

我写的正则表达式是:

pat = 'Interface(\d) is (\S)+ (.*)'

并且我能够获得必填字段,但是当界面启动时,就没有理由打印了,我也想让这种情况下的正则表达式工作..现在我用我编写的常规exp了,它没有似乎工作..有人可以帮忙..

当接口打开时,输出将是

Interface1 is Up
m.group()

Traceback (most recent call last):
  File "<pyshell#38>", line 1, in <module>
    m.group()
AttributeError: 'NoneType' object has no attribute 'group'

python大神给出的解决方案

您需要删除第二个捕获组和最后一个捕获组之间的空间,以使两者匹配。同样,组外的+运算符使其成为重复组;放在里面。

Interface(\d+) is (\S+)(.*)

Regex101