re = /.*сума:\s+(?<suma>\d{1,5}[.,]\d{1,2}).*\\n(?<issuerName>.*)(?<pan>[0-9X]{16}).*нал:\s(?<terminalId>[A-Z0-9]{8}).*авторизації:\s(?<approvalCode>\d{1,10}).*чек\sN:\s(?<chq>\d{1,10}).*rrn:\s(?<rrn>\d{1,15})/mi
str = 'Xxxxxxx \\n вул.Угорська,буд.12 \\n м.Львiв \\n ПП МЕРЕЖА-СЕРВIС ЛЬВIВ \\nОПЛАТА\\nСУМА: 62.98 ГРН\\nПiдпис власника картки не потрiбен!\\nVISA CREDIT 4472XXXXXXXX2021 \\nAID: A0000000031010\\nТЕРМIНАЛ: S11801ZY 16/09/2022 18:49:33\\nКОД АВТОРИЗАЦІЇ: 799207 ЧЕК N: 43409\\nRRN: 063597415491 \\nEXTERNAL RRN: 225915128338\\n(c) Ingenico Group TE7E v.142.102 27/10/\\nP1\\n'
# Print the match result
str.match(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