[ale] hmm. yer never too old to trip on Grep Reg Expressions

DJ-Pfulio DJPfulio at jdpfu.com
Thu Sep 22 20:35:10 EDT 2016


I'd use perl. Trivial to read a file, find the lines matching any
complex regex you like, back up 3 lines and print the following 14 lines.
Don't forget to handle lines that happen inside the group to be
exported. Would be good to show file:linenum:LINE so it is clear -
perhaps highlight the actual line with << >> - idunno.

I like Leam's regex except the leading ^ and trailing $ - these things
don't need to start in col-1 or end of line. Otherwise, probably
restrictive enough to minimize unwanted output.

On 09/22/2016 07:30 PM, Leam Hall wrote:
> Why not "^def*buff*altplan$"? Then grep v out things you don't want.
> 
> On 09/22/16 14:46, Neal Rhodes wrote:
>> So, I need to look in about a bazillion source files for variants of
>>
>>     DEFINE BUFFER SNORT FOR ALTPLAN.
>>     Define Buffer Blech for AltPlan.
>>     Def    Buff   Blurf for AltPlan.
>>     Def Buff Blurf for AltPlan.
>>     def buff blurf for altplan.
>>     define buff blurf for altplan.
>>     define                      buffer                   blorf for
>> altplan.
>>     define  new shared buffer                   blorf for altplan.
>>
>> And grap 3 lines before, 10 lines afterwards, source file and  line#.
>>
>> I was thinking this would to it:
>>
>>     grep -i -B 3 -A 10 -H -n -r -f buf-grep.inp * > buf.grep.out
>>
>> Where buf-grep.inp was
>>
>>     def*buff*for*ALTPLAN
>>
>>     def*buff*for*ARM
>>
>>     def*buff*for*ARMNOTE
>>
>> Alas it is not thus, and the more I study the reg exp notes the more I
>> see there error of my ways, and the less I see an expression that would
>> work.
>> 


More information about the Ale mailing list