const regex = /.+AES:(\w{6}).+\.(\w{6}).+?,(.{6,}?),.+?,.{4}(.{4}),(.{4})\D+(\d{2})(\d{4}).+/g;
// Alternative syntax using RegExp constructor
// const regex = new RegExp('.+AES:(\\w{6}).+\\.(\\w{6}).+?,(.{6,}?),.+?,.{4}(.{4}),(.{4})\\D+(\\d{2})(\\d{4}).+', 'g')
const str = `00:16:0808-11-20AES:AE022AGES:022.60032S!20FINI/ID60032S,BLUE01,ZPR008A21308/MR1,2/AFLPLA,KPSM/TD071030,10325053
01:30:0808-11-20AES:AE20C7GES:442.77186A!H1G-#MDINI/ID77186A,RCH356,AAM18131E306/MR0,0/AFLPLA,KPSM/TD070705,113038C4
19:37:0708-11-20AES:AE1472GES:822.77180A!H1N-#MDINI/ID77180A,RCH871,AJRF3368F313/MR1,0/AFFJDG,OAIX/TD081130,1059997B
20:49:0908-11-20AES:AE123AGES:822.44128A!H1P-#MDINI/ID44128A,RCH836,AJZA3362C312/MR0,0/AFFJDG,OKAS/TD081245,1245C15B
04:16:0508-11-20AES:AE0580GES:D02.70035B!33F/AMCTACC.INI01081215INITIALIZERCH551MC0035ABR02Y5XD313KDOVLERT081400/
22:33:0708-11-20AES:AE10BFGES:822.10196A!H1D-#MDINI/ID10196A,RCH873,JJRF3361F312/MR0,0/AFRODN,FJDG/TD071355,135525BA
22:47:0908-11-20AES:AE117EGES:822.21112A!H1C-#MDINI/ID21112A,RCH877,JJZA3363C312/MR0,0/AFFJDG,OKAS/TD081345,1345F5F3
07:32:0808-11-20AES:AE0243GES:022.80047S!20G01/Y/MC/0047/08/KIAB/KSVN/1701/0000/SNAP85//6A9E`;
// Reset `lastIndex` if this regex is defined globally
// regex.lastIndex = 0;
let m;
while ((m = regex.exec(str)) !== null) {
// This is necessary to avoid infinite loops with zero-width matches
if (m.index === regex.lastIndex) {
regex.lastIndex++;
}
// The result can be accessed through the `m`-variable.
m.forEach((match, groupIndex) => {
console.log(`Found match, group ${groupIndex}: ${match}`);
});
}
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 JavaScript, please visit: https://developer.mozilla.org/en/docs/Web/JavaScript/Guide/Regular_Expressions