const regex = /(([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)(\s*;\s*|\s*$))*/gm;
// Alternative syntax using RegExp constructor
// const regex = new RegExp('(([a-zA-Z0-9_\\-\\.]+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([a-zA-Z0-9\\-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)(\\s*;\\s*|\\s*$))*', 'gm')
const str = `a@a.c
a@a.co
sbreedebd@home.pl
sgerrensbe@free.fr
eishakbf@skyrock.com
dstansallbg@japanpost.jp
mbrittanbh@amazon.co.uk
slauridsenbi@home.pl
dgrabbambj@imageshack.us
etossellbk@apple.com
smoodycliffebl@sogou.com
rtoothillbm@wisc.edu
asebbornbn@infoseek.co.jp
dgherardescibo@jalbum.net
aarnaldybp@europa.eu
aballantinebq@bigcartel.com
cgiraudatbr@phpbb.com
hmaccoughenbs@answers.com
emattessenbt@dot.gov
saronowbu@exblog.jp
ckorneichukbv@berkeley.edu
nroderigobw@yale.edu
ealeksandrevbx@netvibes.com
ebolterby@eepurl.com
cgaitherbz@theatlantic.com
sfeedomec0@shutterfly.com
ahatfullc1@ocn.ne.jp
mbythwayc2@whitehouse.gov
mleitherc3@dyndns.org
gtouretc4@icq.com
lmcnaec5@cam.ac.uk
tculveyc6@si.edu
fportwainc7@themeforest.net
eshivellc8@xing.com
mrheltonc9@howstuffworks.com
rrenodenca@walmart.com
ibaudcb@apple.com
amckerncc@domainmarket.com
aszymczykcd@vk.com
edittyce@patch.com
eibertcf@cyberchimps.com
apagencg@google.cn
bcousinsch@elpais.com
edockrellci@kickstarter.com
peasterlingcj@vkontakte.ru
mmoenck@mail.ru
nstitwellcl@admin.ch
mreginacm@techcrunch.com
fbindoncn@nps.gov
vpocklingtonco@seattletimes.com
lbarabichcp@privacy.gov.au
fmcbeathcq@thetimes.co.uk
jbohillscr@bandcamp.com
aworkescs@amazon.de
mmarusyakct@zdnet.com
lmcaleescu@simplemachines.org
bdemetzcv@illinois.edu
jdominiquecw@economist.com
easlottcx@ftc.gov
adewhirstcy@marriott.com
mstaddomcz@slideshare.net
aealamd0@ibm.com
dweblind1@youtube.com
palasdaird2@unesco.org
rfrearsond3@disqus.com
`;
// 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