re = /^(?P<io_device_name>.*)\|(?P<io_read_req_per_sec>.*)\|(?P<io_write_req_per_sec>.*)\|(?P<io_read_kb_per_sec>.*)\|(?P<io_write_kb_per_sec>.*)\|(?P<io_req_avg_wait_millisec>.*)\|(?P<io_req_avg_service_millisec>.*)\|(?P<io_bandwith_utilization_percent>.*)/m
str = 'Device|rReq_PS|wReq_PS|rKB_PS|wKB_PS|avgWaitMillis|avgSvcMillis|bandwUtilPct
loop0|0.00|0.00|0.00|0.00|0.00|0.00|0.00
loop1|0.00|0.00|0.00|0.00|0.00|0.00|0.00
loop2|0.00|0.00|0.00|0.00|0.00|0.00|0.00
loop3|0.00|0.00|0.00|0.00|0.00|0.00|0.00
loop4|0.00|0.00|0.00|0.00|0.00|0.00|0.00
nvme0n1|0.00|14.00|0.00|88.00|0.00|0.00|0.00'
# 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