|Just another Perl shrine|
Re: Parsing file and joining content into stringby LanX (Chancellor)
|on Jan 15, 2013 at 18:33 UTC||Need Help??|
> I am not asking for anyone to write any code here but I am looking for good advice
> I need to start at the # of each entry and finish at the END
2 possible approaches
1. you change the INPUT_RECORD_SEPARATOR to 2 linebreaks $/="\n\n"
Iterating now with while ( $chunk = <$INPUT>) will give you multiple lines to process in chuncks.
2. you use the flip-flop operator '..' to read all lines between from start till end pattern
You're free to directly process($line) and to skip the '$chunk'-part completely.
> join the contents of the data into one complete string keeping the ";" separators.
well $chunk is a complete string now, do a regex that substitutes ";\n" with ";"
If you process line-by-line try chomp $line to kill all '\n'
> I need to do this for each occurrence of data which falls between # and END.
You need to get rid of start and end line?
Then substitute them away with patterns given. see s///
Or extend the flip-flop expression and add and not //
'//' defaults to matching the last successful pattern, in your case first and last line. not excludes them
So I'm curious to see your code and I hope others won't take the fun away! =)