例: 这是一组  网卡的信息。 

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:1c:42:a5:57:7a brd ff:ff:ff:ff:ff:ff
3: virbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
    link/ether 52:54:00:a3:74:29 brd ff:ff:ff:ff:ff:ff
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 500
    link/ether 52:54:00:a3:74:29 brd ff:ff:ff:ff:ff:ff
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:1c:42:a5:57:7a brd ff:ff:ff:ff:ff:ff
    inet 10.211.55.4/24 brd 10.211.55.255 scope global eth0
    inet6 fdb2:2c26:f4e4:0:21c:42ff:fea5:577a/64 scope global dynamic
       valid_lft 2591752sec preferred_lft 604552sec
    inet6 fe80::21c:42ff:fea5:577a/64 scope link
       valid_lft forever preferred_lft forever
3: virbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
    link/ether 52:54:00:a3:74:29 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 500
    link/ether 52:54:00:a3:74:29 brd ff:ff:ff:ff:ff:ff

 我想要将,其中的内容提取出来。

那么就需要 对 每一组字符串进行解析才可以。

最好的就是,使用 里面的  1 2 3 4  进行分割。将数据分割成8 个字符串。

但是单纯的 字符串的  split 方法, 并不能满足要求。  如果使用字符串的 split 方法。 可能就需要多次的去分割, 而且在不知道数据有多少的情况下, 也没法搞。

 

所有 使用 re 模块的 compile  和  split  就能很完美的解决这件事。

看数据能知道,每一组的开头都是 数字。 而且数字之前都是有换行的  \n 。

所以如果要匹配这些换行怎么做呢?

re.findall('\n\d', out)  # ['\n2', '\n3', '\n4', '\n1', '\n2', '\n3', '\n4']

使用这些匹配出来的数据, 再去分割文件的话,就可以了。用的时候只需要:

li = re.compile('\r?\n\d').split(filestr)
添加了\r? 万一有\r 也不会出问题。

然后就可以循环li 里面的每一条数据。

 

posted on 2019-05-22 18:23  rookiehbboy  阅读(375)  评论(0编辑  收藏  举报