use warnings; use strict; $/ = '!'; while () { next unless /ip address (?:\d+\.){3}\d+/; next unless /interface (\w+(\d+))/; print "$1 -> $2\n"; } __DATA__ interface Vlan1 no ip address no ip route-cache shutdown ! interface Vlan12 ip address 68.142.192.79 255.255.255.0 no ip route-cache shutdown ! interface Vlan8 ip address 68.142.192.79 255.255.255.0 no ip route-cache ! #### Vlan12 -> 2 Vlan8 -> 8