in reply to One-liner for Matching a Regex in a Directory of Files

I happen to like the following one liner because its output is the entire line that matches, which provides context.

perl -ne "print qq/$. : $_\n/ if m/\bM[A-Z]{3}\b/" testfile.txt

In that one liner, any line that contains a four letter capitalized word starting with M, the whole line will print, so you can get a good idea of where it appears in the file. Also, the line number within the file is printed for added clarity.

The regex uses the \b "word boundry" assertion at both sides of the M[A-Z]{3} construct, to ensure that four and only four letters will trigger a match.


Dave