re = /(?<Date>\d{2}\/\d{2}\/\d{2}) (?<Time>\d{4}) +(?<Terminal>A\d{3}) +(?<Enquirer>C[A-Z0-9]+)/m
str = 'START TERMINAL USER ENQUIRER TERMINAL IP
========================================================================================================================
29/05/17 1227 A999 CA75849 8875849 OCBA NCPS RBC/12/1960
SEARCH REF NAME : DOE/JOHN PAGE CODE =
DATE OF BIRTH : / /1988
========================================================================================================================
29/05/17 1424 A999 CA75849 8875849 OCBA NCPS RBC/60/2111
SEARCH REF NAME : SMITH/SIMON/PETER CHAPTER CODE =
DATE OF BIRTH : / /1967
========================================================================================================================'
# 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