import java.util.* ;
import java.util.regex.* ;
class Ideone
{
{
String regex
= "^(\\ w+)\\ s.*?(\\ d{1,2}/\\ d{1,2}/\\ d{2,})\\ s+at\\ s+(\\ d{1,2}:\\ d{1,2}).*?Ksh([\\ d,.]+)\\ s.*?from\\ s+(\\ d+)\\ s+([a-zA-Z\\ s]+)" ; String string
= "QAP04N99TG Confirmed.on 25/1/22 at 1:57 PMKsh1.00 received from 1123123322 JOHN DUE MARTIN. New Account balance is Ksh10.00. Transaction cost, Ksh0.00." ; Pattern pattern = Pattern.compile ( regex) ;
Matcher matcher = pattern.matcher ( string) ;
while ( matcher.find ( ) ) {
String txnCode
= matcher.
group ( 1 ) ; String date
= matcher.
group ( 2 ) ; String time
= matcher.
group ( 3 ) ; String amount
= matcher.
group ( 4 ) ; String account
= matcher.
group ( 5 ) ; String username
= matcher.
group ( 6 ) ; System .
out .
println ( txnCode
+ ">" + date
+ ">" + time
+ ">" + amount
+ ">" + account
+ ">" + username
) ; }
}
}
aW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS51dGlsLnJlZ2V4Lio7CgpjbGFzcyBJZGVvbmUKewoJcHVibGljIHN0YXRpYyB2b2lkIG1haW4gKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBqYXZhLmxhbmcuRXhjZXB0aW9uCgl7CgkJU3RyaW5nIHJlZ2V4ID0gIl4oXFx3KylcXHMuKj8oXFxkezEsMn0vXFxkezEsMn0vXFxkezIsfSlcXHMrYXRcXHMrKFxcZHsxLDJ9OlxcZHsxLDJ9KS4qP0tzaChbXFxkLC5dKylcXHMuKj9mcm9tXFxzKyhcXGQrKVxccysoW2EtekEtWlxcc10rKSI7CiAgICAgICAgU3RyaW5nIHN0cmluZyA9ICJRQVAwNE45OVRHIENvbmZpcm1lZC5vbiAyNS8xLzIyIGF0IDE6NTcgUE1Lc2gxLjAwIHJlY2VpdmVkIGZyb20gMTEyMzEyMzMyMiBKT0hOIERVRSBNQVJUSU4uIE5ldyBBY2NvdW50IGJhbGFuY2UgaXMgS3NoMTAuMDAuIFRyYW5zYWN0aW9uIGNvc3QsIEtzaDAuMDAuIjsKICAgICAgICBQYXR0ZXJuIHBhdHRlcm4gPSBQYXR0ZXJuLmNvbXBpbGUocmVnZXgpOwoJCU1hdGNoZXIgbWF0Y2hlciA9IHBhdHRlcm4ubWF0Y2hlcihzdHJpbmcpOwogICAgICAgIHdoaWxlKG1hdGNoZXIuZmluZCgpKSB7CiAgICAgICAgICAgIFN0cmluZyB0eG5Db2RlID0gbWF0Y2hlci5ncm91cCgxKTsKICAgICAgICAgICAgU3RyaW5nIGRhdGUgPSBtYXRjaGVyLmdyb3VwKDIpOwogICAgICAgICAgICBTdHJpbmcgdGltZSA9IG1hdGNoZXIuZ3JvdXAoMyk7CiAgICAgICAgICAgIFN0cmluZyBhbW91bnQgPSBtYXRjaGVyLmdyb3VwKDQpOwogICAgICAgICAgICBTdHJpbmcgYWNjb3VudCA9IG1hdGNoZXIuZ3JvdXAoNSk7CiAgICAgICAgICAgIFN0cmluZyB1c2VybmFtZSA9IG1hdGNoZXIuZ3JvdXAoNik7CiAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbih0eG5Db2RlKyI+IitkYXRlKyI+Iit0aW1lKyI+IithbW91bnQrIj4iK2FjY291bnQrIj4iK3VzZXJuYW1lKTsKICAgICAgICB9Cgl9Cn0=