re = /^Description\h*:\h*vusb0\/iDRAC\h*Network\/.*(?:.*\R)+?IPv4 Address\h+:\h*(\d{1,3}(?:\.\d{1,3}){3})/m
str = 'lo0
Description : lo0
Status : Up
Interface Type : Loopback
DHCP : Disabled
MAC Address : 30-03-27-E3-3B-03
FQDD : Not Applicable
IPv4 Address : 127.0.0.1
Subnet Mask : 255.0.0.0
vmk0
Description : vmnic0/Management Network/vmk0
Status : Up
Interface Type : Ethernet
DHCP : Enabled
DHCPServerV4 : 100.98.65.10
MAC Address : 50-9A-4C-9C-99-8D
FQDD : NIC.Embedded.1-1-1
IPv4 Address : 100.98.68.239
Subnet Mask : 255.255.252.0
IPv6 Address : fe80::529a:4cff:fe9c:998d
Prefix Length : 64
IPv4 Gateway Address : 100.98.68.1
IPv4 DNSServer Address 0: 10.7.7.7
IPv4 DNSServer Address 1: 10.8.8.8
vmk1
Description : vusb0/iDRAC Network/vmk1
Status : Up
Interface Type : Ethernet
DHCP : Disabled
MAC Address : 00-50-56-6E-6F-99
FQDD : Not Applicable
IPv4 Address : 169.254.10.12
Subnet Mask : 255.255.255.0
IPv6 Address : fe80::250:56ff:fe6e:6f99
Prefix Length : 64
IPv4 DNSServer Address 0: 10.7.7.7
IPv4 DNSServer Address 1: 10.8.8.8
vmk2
Description : vmnic1/iDRAC Network/vmk2
Status : Up
Interface Type : Ethernet
DHCP : Disabled
MAC Address : 00-50-56-6E-6F-99
FQDD : Not Applicable
IPv4 Address : 169.254.3.1
Subnet Mask : 255.255.255.0
IPv6 Address : fe80::250:56ff:fe6e:6f99
Prefix Length : 64
IPv4 DNSServer Address 0: 10.7.8.9
IPv4 DNSServer Address 1: 10.3.2.1
racadm>>'
# Print the match result
str.scan(re) do |match|
puts match.to_s
end
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Ruby, please visit: http://ruby-doc.org/core-2.2.0/Regexp.html