Many people have seen this fantastic meme answer
before about how we should use a parser to parse HTML instead of using Regex. The argument is that HTML is not regular and thus cannot be parsed using Regex.
However, a closer look at JS regexes, it seems JS regexes can indeed describe irregular languages via backreferences. Languages such as $a^n|a^n\ \{\ a \in \Sigma, n \in N\ \}$ can be described with:
/(.+)\|\1/
The regexes JS has are really "enhanced regular expressions", but I'm not sure if that's enough to parse HTML which is obviously irregular. I'm also not sure if they at least cover every CFG languages.