<分区> 分区>
我正在尝试使用 \w{2}\d/\d{1,2}(/\d{1,2})? 来匹配以下两个接口(interface)在 Cisco 交换机上:
Gi1/0/1
Fa0/1
当我使用 re.search() 时,它会返回所需的输出。
import re port = "Gi1/0/1 Fa0/1" search = re.search(r'\w{2}\d/\d{1,2}(/\d{1,2})?', port) print search.group()
我得到 "Gi1/0/1" 作为输出。
当我使用 re.findall() 时
import re port = "Gi1/0/1 Fa0/1" search = re.findall(r'\w{2}\d/\d{1,2}(/\d{1,2})?', port) print search
我得到了 "['/1', '']" 这是不希望的。
为什么 findall() 不返回 ['Gi1/0/1','Fa0/1']?
那是因为我使用了 (/\d{1,2})?,而 findall() 应该返回这部分吗?这是为什么?
我们如何使用 findall() 获取['Gi1/0/1','Fa0/1']?
