Reputation: 64530
Here's a basic regex technique that I've never managed to remember. Let's say I'm using a fairly generic regex implementation (e.g., grep or grep -E). If I were to do a list of files and match any that end in either .sty
or .cls
, how would I do that?
Upvotes: 4
Views: 2722
Reputation: 193696
ls | grep -E "\.(sty|cls)$"
\.
matches literally a "."
- an unescaped .
matches any character(sty|cls)
- match "sty"
or "cls"
- the | is an or
and the brackets limit the expression.$
forces the match to be at the end of the lineNote, you want grep -E
or egrep
, not grep -e
as that's a different option for lists of patterns.
Upvotes: 4