At least once every few days while coding, usually to do one of the following:
Select multiple things in the same file at the same time without needing to click all over the place
Normally I use multicursor keyboard shortcuts to select what I want and for the trickier scenarios there are also commands to go through selections one at a time so you can skip certain matches to end up with only what you want.
But sometimes there are too many false matches that you don’t want to select by hand and that’s where regex comes in handy.
For instance, finding:
parent but not apparent, transparent, parentheses, apparently, transparently
test but not latest, fastest, testing, greatest, shortest
trie but not entries, retries, countries, retrieve
http but not https
… which can be easily done by searching for a word that doesn’t include a letter immediately before or immediately after: e.g. \Wtest\W.
Search for things across all files that come back with too many results that aren’t relevant
Basically using the same things above.
Finding something I already know makes a pattern. Like finding all years: \d{4}, finding all versions: \d+\.\d+\.\d+, finding random things that a linter may have missed such as two empty lines touching each other: \n\s*\n\s*\n, etc…
At least once every few days while coding, usually to do one of the following:
Select multiple things in the same file at the same time without needing to click all over the place
Normally I use multicursor keyboard shortcuts to select what I want and for the trickier scenarios there are also commands to go through selections one at a time so you can skip certain matches to end up with only what you want.
But sometimes there are too many false matches that you don’t want to select by hand and that’s where regex comes in handy.
For instance, finding:
… which can be easily done by searching for a word that doesn’t include a letter immediately before or immediately after: e.g.
\Wtest\W
.Search for things across all files that come back with too many results that aren’t relevant
Basically using the same things above.
Finding something I already know makes a pattern. Like finding all years:
\d{4}
, finding all versions:\d+\.\d+\.\d+
, finding random things that a linter may have missed such as two empty lines touching each other:\n\s*\n\s*\n
, etc…