re = /^(\d{1,3}(?:\.\d{1,3}){3})\s*-\s*((?1))\s*-\s*((?:[0-9A-Fa-f]{2}[:-]){3,6}[0-9A-Fa-f]{2})\s*-\s*(\d\d\/\d\d\/\d{4}\s\d\d(?::\d\d){2}|NEVER EXPIRES|INACTIVE)\s*-\s*(\w)\s*-\s*(.*)$/m
str = 'Changed the current scope context to 192.25.200.0 scope.
Type : N - NONE, D - DHCP B - BOOTP, U - UNSPECIFIED, R - RESERVATION IP
============================================================================================
IP Address - Subnet Mask - Unique ID - Lease Expires -Type -Name
============================================================================================
192.25.200.4 - 255.255.255.192- 64-9e-f3-b3-81-d3 -01/08/2018 17:07:46 -D- BH1-WAP-01.local
192.25.200.5 - 255.255.255.192- 50-57-a8-30-11-f6 -01/08/2018 16:24:59 -D- BH1-WAP-03.local
192.25.200.6 - 255.255.255.192- f0-f7-55-df-c4-ff -01/08/2018 16:45:04 -D- BH1-WAP-02.local
192.25.200.7 - 255.255.255.192- 00-23-24-bb-ce-83 -04/08/2018 10:55:00 -D- CESTA1703043.LOCAL
No of Clients(version 4): 4 in the Scope : 192.25.200.0.
Command completed successfully.
Changed the current scope context to 192.25.200.64 scope.
Type : N - NONE, D - DHCP B - BOOTP, U - UNSPECIFIED, R - RESERVATION IP
============================================================================================
IP Address - Subnet Mask - Unique ID - Lease Expires -Type -Name
============================================================================================
192.25.200.68 - 255.255.255.192- 28-94-0f-05-ac-6c -01/08/2018 03:14:46 -D- WAP-C12-01-1047.local
No of Clients(version 4): 1 in the Scope : 192.25.200.64.
Command completed successfully.
Changed the current scope context to 192.28.211.0 scope.
192.28.211.27 - 255.255.255.0 -00-0a-13-00-00-00-00- NEVER EXPIRES -U- CFCameraNearlockers
Changed the current scope context to 192.28.194.0 scope.
192.28.194.254 - 255.255.255.0 -00-48-32-95-85 - INACTIVE -N- bms'
subst = '$1 ~ $2 ~ $3 ~ $4 ~ $5 ~ $6'
result = str.gsub(re, subst)
# Print the result of the substitution
puts result
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