Perl code can be remarkably compact if your requirements are loose (as they appear to be).
Output:#!/usr/bin/perl use strict; my $important; while ( ( $_ = <DATA> ) !~ /^\-{10,}$/ ) { $important = $1 if /^Important Text: (\d+)$/i; } while ( <DATA> ) { print join ( ",", $important, split ( /\s+/ ) ) . "\n"; } __DATA__ Date 08/17/11 Report Page 1 Time 12:46 Important Text: 1 Misc Text: All Misc Text: Sec ** Indicates APPTEXT PLINE SCODE PCODE FID SEC unsec fcs ---------------------------------------------------------------------- +--------------------------- TEST TT TT00 TT00.1 NO xxxx TTD TEST TT TT00 **TT00.2 YES XXXXXX TEST TT TT00 **TT00.3 YES XXX TEST TT TT01 TT01.1 NO XXXXXXXXXXX TT TEST TT **TT02 TT02.1 YES XXXXX
1,TEST,TT,TT00,TT00.1,NO,xxxx,TTD 1,TEST,TT,TT00,**TT00.2,YES,XXXXXX 1,TEST,TT,TT00,**TT00.3,YES,XXX 1,TEST,TT,TT01,TT01.1,NO,XXXXXXXXXXX,TT 1,TEST,TT,**TT02,TT02.1,YES,XXXXX
In reply to Re: Parsing text file to CSV
by thewebsi
in thread Parsing text file to CSV
by apok69
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |