const regex = /^SUMME \/ W;\d{1,3};;\d{1,3};\d{1,3};\d{1,3};\K\d{1,3}/gm;
// Alternative syntax using RegExp constructor
// const regex = new RegExp('^SUMME \\\/ W;\\d{1,3};;\\d{1,3};\\d{1,3};\\d{1,3};\\K\\d{1,3}', 'gm')
const str = `02.03.;38;;;3;1;42;
03.03.;36;;;3;;39;
04.03.;51;;14;9;1;75;
05.03.;70;;9;9;;88;
06.03.;26;;;2;;28;
SUMME / W;221;;23;26;2;272;
09.03.;35;;10;6;1;52;
10.03.;50;;3;4;;57;
11.03.;48;;4;8;;60;
12.03.;35;;;4;1;40;
13.03.;15;;;3;;18;
SUMME / W;183;;17;25;2;227;
16.03.;23;;7;2;1;33;
17.03.;36;;1;3;;40;
18.03.;36;;;8;;44;
19.03.;34;;;2;;36;
20.+21.03.;22;;4;3;;29;
SUMME / W;151;;12;18;1;182;
23.03.;38;;4;4;1;47;
24.03.;26;;4;5;;35;
25.03.;24;;7;5;;36;
26.03.;22;;;3;;25;
27.+28.03.;4;;;2;;6;
SUMME / W;114;;15;19;1;149;`;
// 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