re = /(Fatal data error processing file '[^\']+'\.\n?\s?|General failure \(\d+\): )(?<Exception>[^\n\$]+)/m
str = 'FILE_READER[1]: TT19472 Fatal data error processing file \'/default/folder/ingest/amr_ca_sf_items_658721_US.out\'.
Field length overflow(s) in record 2355, field 17, \'COUNT_DESC\'. Expected 300 bytes, field contained 307 bytes.
FILE_READER[1]: TT19015 TPT Exit code set to 12.
$FILE_READER: DataConnector Producer operator Instances: 1 $FILE_READER: ECI operator ID: \'$FILE_READER-18808\' $FILE_READER: Operator instance 1 processing file \'/default/folder/ingest/amr_ca_sf_items_658721_US.out\'. $FILE_READER: TT19472 Fatal data error processing file \'/default/folder/ingest/amr_ca_sf_items_658721_US.out\'. Field length overflow(s) in record 1, field 1, \'"ORDER"\'. Expected 20 bytes, field contained 841 bytes. $FILE_READER: TT19015 TPT Exit code set to 12.
FILE_READER: TT19434 pmAttach failed. General failure (34): \'!ERROR! dlopen failed: /default/folder/installations/lib/axm.so: cannot open shared object file: No such file or directory\' FILE_READER: TT19302 Fatal error loading access module. FILE_READER: TT19015 TPT Exit code set to 12.
FILE_READER: TT19134 !ERROR! Fatal data error processing file \'/default/folder/ingest/rpv0410_12123_1.out.gz\'. Delimited Data Parsing error: Too many columns in row 246. FILE_READER: TT19015 TPT Exit code set to 12.
FILE_WRITER: TT19434 pmWrite failed. General failure (34): \'pmunxWBuf: fwrite byte count error (No space left on device)\' FILE_WRITER: TT19306 Fatal error writing data. FILE_WRITER: TT19015 TPT Exit code set to 12.
'
# 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