Regex is good for a few very specific things, and sysadmins used to use it for goddamn everything. If all your server logs are in lightly-structured text files on a small number of servers, being able to improvise regex is damn useful for tracking down server problems. Just write a shell loop that spawns an ssh logging into each server and running grep over the log files, to look for that weird error.
These days, if you need to crunch production server logs you probably need to improvise in SQL and jq and protobufs or systemd assmonkery or something.
But if you actually need a parser, for goodness sake use a parser combinator toolkit, don’t roll your own, especially not with regex. Describing your input language in plain Haskell is much nicer than kludging it.
(This is the “totally serious software engineering advice” forum, right?)
I’ve worked mostly as a data scientist / analyst but regex was being user to identify various things in the SQL database (which was viewed locally via R table). I forget the exact is cases, mostly remembering how complex some of it got… Especially after certain people were using GPT to build them.
And GPT like to make up extra bits not necessary, but my coworkers didn’t exactly have the knowledge to read regex, which lead to nobody really checking it. Now it just gives me anxiety, haha.
Thanks, I now have insight into my own personal hell for when I die.
Regex is good for a few very specific things, and sysadmins used to use it for goddamn everything. If all your server logs are in lightly-structured text files on a small number of servers, being able to improvise regex is damn useful for tracking down server problems. Just write a shell loop that spawns an
ssh
logging into each server and runninggrep
over the log files, to look for that weird error.These days, if you need to crunch production server logs you probably need to improvise in SQL and
jq
and protobufs or systemd assmonkery or something.But if you actually need a parser, for goodness sake use a parser combinator toolkit, don’t roll your own, especially not with regex. Describing your input language in plain Haskell is much nicer than kludging it.
(This is the “totally serious software engineering advice” forum, right?)
I’ve worked mostly as a data scientist / analyst but regex was being user to identify various things in the SQL database (which was viewed locally via R table). I forget the exact is cases, mostly remembering how complex some of it got… Especially after certain people were using GPT to build them.
And GPT like to make up extra bits not necessary, but my coworkers didn’t exactly have the knowledge to read regex, which lead to nobody really checking it. Now it just gives me anxiety, haha.