re = /(?<value>^Interface ethernet1\/4.(?<text>25[0-6]|(2[0-4]|1\d|[1-9])\d|[1-9]).*):.*/m
str = 'Interface ethernet1/4.101(DEMO_101_interface): Operational status
Interface ethernet1/4.182(TELCO_MGMT_interface): Operational status
Interface ethernet1/4.75(GUEST_interface): Operational status
Interface ethernet1/4.183(TELCO_DATA_interface)
Interface ethernet1/4.77(Hardware_MGMT_interface):
Interface ethernet1/4
Interface ethernet1/10(): Operational status
Interface ethernet1/1(INSIDE): Bits sent
Interface ethernet1/4(): Operational status
Interface ethernet1/4():'
# 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