Actually writing code that uses them: last month. Commandline: last week.
Every day pretty much with Unix tools. Vim, awk, sed, etc.
Yesterday, when I had a file with a list of JSON objects, and I wanted to move the date field at the end to the beginning, so I used regex find and replace to move it. Something like
\{(.*?), ("date": ".*?")
in Search, and then{$2, $1
in replace (or something close to it).Yes, I refactor code and data using regex. I can’t be arsed to learn AWK (even though I should).
AWK doesn’t work with json IIRC. You have to use jq to deal with json.
Usually many times a day… Even today which have been mostly meetings.
Writing the script that got me fired
I hope you are joking
Please explain more! What happened?
Did you destroy a database? Expose credentials? Nuke the company intentionally?
Yesterday, for capturing URLs.
https?//[a-zA-Z0-9_-]*
I am kinda learning RE right now 😅
What about ftp? 🤔
If we want to include every protocol then the RE could be complex.
A few hours ago.
I just wanted to make a list of AD group names into a powershell array.
Asking this question is like asking when was the last time you had to search through text.
This sentence is the uncanny valley for structure.
On average I’ve probably had to work with them or write one from scratch only a handful of times per year over my career. Not often enough to be an expert or anything but I’m not so afraid of them as I used to be.
I don’t always use regular expressions, but when I do, I use it to parse XML,
iirc using RE to parse tag languages is not recommended.
Sure, but if you are not regularly expressing code that has the potential of summoning elder gods that will swallow your soul into a dimension of ceaseless screaming then are you really living?
We use it for triaging test failure (running tens of thousands of tests for CPU design verification).
That use is acceptable because it is purely informational. In general you should avoid regexes at all costs. They’re difficult to read, and easy to get wrong. Generally they are a very big red flag.
Unfortunately they tend to get used where they shouldn’t due to lazy developers not parsing things properly.
regexes are a well established solution for parsing strings. what exactly is the “proper” alternative you propose?
Yesterday. Gotta grep those logs.
Today.
Today, to configure fail2ban. Before that, yesterday to select which tests to run.