Hello ramukavuri and welcome to the monastery and to the wonderful world of Perl
Now that you have edited your original post and it is readable, consider that is auspicable to present what you have already written to achieve your goal: infact many monks are not so propense (and with reason!) to answer back with complete, working code when no effort is shown by the original poster.
That said it usually help to have a procedure in plain english and then translate it to Perl as for your grade of experience: infact is not useful have back answers you are not ready to understand.
Looking at you data (and your title) it seems that you want to capture lines between a start one and and end one. This can be accomplished via the flip-flop operator: see range operators in perlop.
This funny named operator is bistable: id est it acts like a switch on and off. Consider the following example:
perl -e " foreach (1..$ARGV[0]){ print qq($_\n) if $_ == 5 .. $_==7}
+" 15
5
6
7
The if part is true after a 5 (included) is encountered and remains true until a 7 (included) is reached.
So you can parse your data using a flip flop adjusted to your needs and for these lines strip out the unnecessary parts and print what it reamis join -ing them with the char you want.
Remeber to use strict and use warnings to play with a safe net!
L*
PS: see also flip flop at my homenode
L*
There are no rules, there are no thumbs..
Reinvent the wheel, then learn The Wheel; may be one day you reinvent one of THE WHEELS.
|