const regex = /^(?=.{58}2\)\?\.\*\\.{186}\\2\\\(\)\{2\}\.\*\/$)((.*)(\2\2)?.*\/\2\^\2\(\2\?=\2\.\2\{58\2\}2\2\\\2\)\2\\\2\?\2\\\2\.\2\\\2\*\2\\\2\\\2\.\2\{186\2\}\2\\\2\\2\2\\\2\\\2\\\2\(\2\\\2\)\2\\\2\{2\2\\\2\}\2\\\2\.\2\\\2\*\2\\\2\/\2\$\2\)\2\(\2\(\2\.\2\*\2\)\2\(){2}.*/;
// Alternative syntax using RegExp constructor
// const regex = new RegExp('^(?=.{58}2\\)\\?\\.\\*\\\\.{186}\\\\2\\\\\\(\\)\\{2\\}\\.\\*\\\/$)((.*)(\\2\\2)?.*\\\/\\2\\^\\2\\(\\2\\?=\\2\\.\\2\\{58\\2\\}2\\2\\\\\\2\\)\\2\\\\\\2\\?\\2\\\\\\2\\.\\2\\\\\\2\\*\\2\\\\\\2\\\\\\2\\.\\2\\{186\\2\\}\\2\\\\\\2\\\\2\\2\\\\\\2\\\\\\2\\\\\\2\\(\\2\\\\\\2\\)\\2\\\\\\2\\{2\\2\\\\\\2\\}\\2\\\\\\2\\.\\2\\\\\\2\\*\\2\\\\\\2\\\/\\2\\$\\2\\)\\2\\(\\2\\(\\2\\.\\2\\*\\2\\)\\2\\(){2}.*', '')
const str = `/^(?=.{58}2\\)\\?\\.\\*\\\\.{186}\\\\2\\\\\\(\\)\\{2\\}\\.\\*\\/\$)((.*)(XXX2)?.*\\/^(?=.{58}2\\)\\?\\.\\*\\\\.{186}\\\\2\\\\\\(\\)\\{2\\}\\.\\*\\/\$)((.*)(XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\\2\\(){2}.*/`;
// Reset `lastIndex` if this regex is defined globally
// regex.lastIndex = 0;
let m;
if ((m = regex.exec(str)) !== null) {
// 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