const regex = /^( *)( *)( *)(['.-])((?!\4)(?4)+?)((?!\4|\5)(?4)++)\1\3whale
(?=.(.))\6.\7\4(?!\4|\6)([_\/])\3(?!(?11))\8\2(?=\2)\3\1_((?=\4+.).\5(?!\6)\5)(?!.?')\7\4
(?=.\7)\6.([,`])\3{2}(?=.((?!\8)[_\/])\11)\Q(_\E.\4{2}(?!\.)\5((?!\10)(?10)(?!\4+|\5|\6))\1\3{3}(\\)
(\3{3})\13\2{2}\1{1}\3+(?<=\S {10})\4\1\3\|
\1(?=\12)(?12)(?!`,)\10\4(\11{2})\4\14\10\15\9\8
\14{2}(?=\6)['-]\4(?<!-)\11\8\11\4\6\11\15\.-|(?!)/;
// Alternative syntax using RegExp constructor
// const regex = new RegExp('^( *)( *)( *)([\'.-])((?!\\4)(?4)+?)((?!\\4|\\5)(?4)++)\\1\\3whale
(?=.(.))\\6.\\7\\4(?!\\4|\\6)([_\\\/])\\3(?!(?11))\\8\\2(?=\\2)\\3\\1_((?=\\4+.).\\5(?!\\6)\\5)(?!.?\')\\7\\4
(?=.\\7)\\6.([,`])\\3{2}(?=.((?!\\8)[_\\\/])\\11)\\Q(_\\E.\\4{2}(?!\\.)\\5((?!\\10)(?10)(?!\\4+|\\5|\\6))\\1\\3{3}(\\\\)
(\\3{3})\\13\\2{2}\\1{1}\\3+(?<=\\S {10})\\4\\1\\3\\|
\\1(?=\\12)(?12)(?!`,)\\10\\4(\\11{2})\\4\\14\\10\\15\\9\\8
\\14{2}(?=\\6)[\'-]\\4(?<!-)\\11\\8\\11\\4\\6\\11\\15\\.-|(?!)', '')
const str = ``;
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