Some people, when confronted with a problem, think “I know, I’ll use regular expressions.” Now they have two problems.
Regex really isn’t that bad when using named capture groups.
Oh yeah they definitely have uses, but there’s a real tendency for people to go a bit crazy with them. Complex regexen aren’t exactly readable, there’s all kinds of fun performance gotchas, there’s sometimes other tools/algorithms that are more suitable for the task, and sometimes people try to use them to eg. parse HTML because they don’t know that it is literally impossible to use regular expressions to parse languages that aren’t regular
it is literally impossible to use regular expressions to parse languages that aren’t regular
It’s impossible to parse the whole syntax tree, but that doesn’t mean you can’t get the subset you’re interested in.
It’s entirely possible to parse HTML in PCRE. You shouldn’t, but it is possible. The language stopped being strictly regular a long time ago and is entirely capable of doing it.
I really like this approach for doing non trivial regex https://github.com/VerbalExpressions
const tester = VerEx() .startOfLine() .then('http') .maybe('s') .then('://') .maybe('www.') .anythingBut(' ') .endOfLine();
Regex feels distinctly eldritch to me. Like, a lot of computing knowledge feels like magic, but regex feels like the kind of magic you get by consorting with dark forces
regex feels like the kind of magic you get by consorting with dark forces
AKA reading the manual.
Im a good christian boy thats why I refuse to read the manual