我需要提取字符串中value
模式匹配的所有实例的ssid
。你知道吗
interface_info = '''Interface wlan1-cabin-2
ifindex 37
wdev 0x300000003
addr 06:53:1a:4e:07:02
ssid SSID3
type AP
channel 6 (2437 MHz), width: 20 MHz, center1: 2437 MHz
Interface wlan1-cabin-1
ifindex 36
wdev 0x300000002
addr 06:53:1a:4e:07:01
ssid SSIDTEST2
type AP
channel 6 (2437 MHz), width: 20 MHz, center1: 2437 MHz
Interface wlan1
ifindex 7
wdev 0x300000001
addr 06:53:1a:4e:07:00
ssid SSID1
type AP
channel 6 (2437 MHz), width: 20 MHz, center1: 2437 MHz '''
ssid_regex = re.compile('ssid (\w+)')
ssid_extract = re.search(ssid_regex,interface_info)
print (ssid_extract)
仅返回第一个匹配的值。我需要提取每个ssid
匹配[SSID3,SSIDTEST2,SSID1}的值。
SSID3型
实际SSID3
应为[SSID3,SSIDTEST2,SSID1]
哦!/usr/bin/env python文件
进口re 接口信息=“”
物理层3
wlan1-cabin-1接口
如果索引36
wdev 0x30000002
地址:06:53:1a:4e:07:01
ssid SSIDTEST3
类型AP
通道6(2437 MHz),宽度:20 MHz,中心1:2437 MHz
接口wlan1
指数7
wdev 0x30000001
地址:06:53:1a:4e:07:00
ssid SSIDTEST2
类型AP
通道6(2437 MHz),宽度:20 MHz,中心1:2437 MHz
物理层2
接口wlan0
如果索引6
wdev 0x20000001
地址02:ac:1a:4e:07:00
ssid SSID1
类型AP
通道149(5745 MHz),宽度:80 MHz,中心1:5775 MHz
'' 接口信息=回复sub(重新编译('^\s+',关于多行),'',接口信息) ssid\u正则表达式=重新编译('ssid(\w+)') ssid\u提取=关于芬德尔(ssid\u regex,interface\u info[接口_信息索引(“接口wlan1”):])
打印(ssid\u摘录) 打印(类型(ssid\u extract))
打印(str(接口信息))
相关问题 更多 >
编程相关推荐