in reply to Re: match a word and delete last line
in thread match a word and delete last line

tybalt89, how do I modify to remove the previous line word if doesn't include (d,_,-) for example if only says Text.
sample-text file Text-1 matching the 1st line matching the last line text text_1 sample-text file text-2 matching the 1st line matching the last line text_1 text-2 text sample-text file text matching the 1st line matching the last line
I need to remove the following ( text ) too-
..................... text_1 text-2 text sample-text file text matching the 1st line matching the last line

Replies are listed 'Best First'.
Re^3: match a word and delete last line
by tybalt89 (Monsignor) on May 23, 2017 at 14:17 UTC

    Try this, but your question is a little unclear. Please give an exact input and output test case, not a partial one.

    #!/usr/bin/perl # http://perlmonks.org/?node_id=1190966 use strict; use warnings; $_ = do { local $/; <DATA> }; s/^(\w+(?:[-_]\d+)?)\n(?=.*\1\b)//gm; print; __DATA__ Text_1 sample-text file Text_1 matching the 1st line matching the last line Text text_1 text-2 sample-text file text-2 matching the 1st line matching the last line text_1 text-2 text sample-text file text matching the 1st line matching the last line
      That works. I was missing (?: ). Thank you.