const regex = /-(?!(?:Jan|Feb|Mar|Apr|May|Ju[nl]|Aug|Sep|Oct|Nov|Dec)$).*/gm;
// Alternative syntax using RegExp constructor
// const regex = new RegExp('-(?!(?:Jan|Feb|Mar|Apr|May|Ju[nl]|Aug|Sep|Oct|Nov|Dec)$).*', 'gm')
const str = ` ID GB_ACC Symbol
1 ILMN_1655796 XM_001127871.1 3-Mar
2 ILMN_1656409 NM_172311.1 STON1-GTF2A1L
3 ILMN_1659893 NM_017418.1 1-Dec
4 ILMN_1662905 NM_001018136.1 NME1-NME2
5 ILMN_1669592 NM_001005416.1 12-Mar
6 ILMN_1670188 NM_172089.2 TNFSF12-TNFSF13
7 ILMN_1677318 NM_001002266.1 8-Mar
8 ILMN_1677446 NM_199203.1 TMEM189-UBE2V1
9 ILMN_1681101 NM_017923.2 10-Sep
10 ILMN_1683974 NM_001003819.1 TRIM6-TRIM34
11 ILMN_1693430 NM_001018136.1 NME1-NME2`;
// 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