const regex = new RegExp('^(\\w+(\\-\\w+)?)(\\s)([A-Z]\\.\\s)*(\\w+)(\\s\\w+)?\\,((\\(|1\\-|\\(1\\-)*\\d{3}(\\)(\\s)?|-|\\s|\\)\\-)?\\d{3}\\-*\\s?\\d{4})\\,(\\w+)(\\-\\w+\\-\\w+)?(\\s\\w+$)?', 'gm')
const str = `Kiayada D. Levy,(570)7924192,Sint-Laureins-Berchem
Gretchen F. Manning,(1-656)-285-0869,Spoleto
Ashton Richards,(974) 843-9297,Annapolis Royal
Demetrius J. Ferguson,1-906-206-4323,Rea
Blair Nelson,1-121-171-3665,Bertiolo
Cynthia J. Farley,632 691 2180,Moen
Nayda M. Lloyd,1-864-250-6977,Sarrev
Miranda Edith Sexton,1-597-689-8316,Shipshaw
Fulton Mays,(725)789-9517,Pierrefonds
Shea Kim,1-697-854-4139,Bihain
Emma-Mae Winters,1-137-630-5601,Gulfport
Inez W. Depew,1-833-470-5664,Johnstone
Darrel F. Key,1-878-918-2161,Olympia
Tobias L. Stephens,1-119-939-6704,Unnao
Elmo Pate,1-869-333-7341,Griesheim`;
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