const regex = /(\d+)\s+(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d+)\s+(\d+)\s+([A-z\d]+)(\(OK\))?\s+((\w+[A-z]\w+\s+)+)/g;
// Alternative syntax using RegExp constructor
// const regex = new RegExp('(\\d+)\\s+(\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}:\\d+)\\s+(\\d+)\\s+([A-z\\d]+)(\\(OK\\))?\\s+((\\w+[A-z]\\w+\\s+)+)', 'g')
const str = `--------------------------------------------------
0 127.0.0.1:1234 16 739casd1b747171ee9038fdbeb5440f(OK) Hans Dieter
1 127.0.0.1:1234 16 c196c8077727asd7d2bc691e109904dc(OK) House P
2 127.0.0.1:1234 15 9647c2fd98asdb7c7278e820bef701c(OK) EisFrau
3 127.0.0.1:1234 16 ed018ads96a17d55c62d4b6814(OK) [S.L]EisMann
4 127.0.0.1:1234 0 1f7b7fasd0bc3ce1c300a451b0d039(OK) 0MasterCore0
5 127.0.0.1:1234 78 dbf18b744dasd326e3585f4b11d4f40(OK) Abdul (6 users in total)"`;
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