const regex = /^\d{12,13}(\t| ){1,}\d{1,9}$/gm;
// Alternative syntax using RegExp constructor
// const regex = new RegExp('^\\d{12,13}(\\t| ){1,}\\d{1,9}$', 'gm')
const str = `5907587146563 5
5907587146761 5
5,9077553218 5
5907755321983 5d
5,907755322 5
5907755323062 562332322
5907755356700 533223233
5907755356745 3
5907755371575 5
5907587155169 8
5901905310162 20
5901905310161 12
5907587155244 1
12345678901234 14
1234567890123 13
123456789012 12
12345678901 11
1234567890 10
590758715524 1`;
// 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