• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 213
  • Last Modified:

Urgent Help with Large Text File

Hi All!

I am in need of some urgent help writing a Perl script to rearrange a large text file.  I've attached a sample (prior) of our text file and another file that show what I am hoping end up with.  

any help would be greatly appreciated as our Perl programmer has left the company and this fell into my lap.  

spudmcc
test.TXT
TEST1.xls
0
spudmcc
Asked:
spudmcc
  • 2
  • 2
1 Solution
 
Adam314Commented:
How should lines with no date be processed (eg: line 16, 26, 41)?
0
 
spudmccAuthor Commented:
Should be treated as null.  Not every record has a date but when available we need to include it.  

Thanks


0
 
Adam314Commented:

open(my $in, "<before.txt") or die "Could not open before: $!\n";
open(my $out, ">after.txt") or die "Could not open after: $!\n";
my ($a, $b, $c);
while(<$in>) {
	chomp;
	s/^\s*//;
	s/\s*$//;
	if(/\.\d+$/) {
		#record data
		my @f=split/\//;
		foreach my $r (@f) {
			print $out join(",",$a,$b,$c,$r) . "\n";
		}
	}
	elsif(m|^\s*(\S+)\s+(.*?)\s+(\d+/\d+/\d+)\s*$|) {
		#header with date
		($a,$b,$c)=($1,$2,$3);
	}
	elsif(m|^(\S+)\s+(.*)$|) {  #\s+ \s+
		($a,$b,$c)=($1,$2,'');
	}
}
close($in);
close($out);

Open in new window

0
 
spudmccAuthor Commented:
Thank you SO MUCH!  It worked perfect!  I appreciate your time, patience and talent and thank you so much!

Andy (spudmcc)
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: Microsoft Office 2010

This course will introduce you to the interfaces and features of Microsoft Office 2010 Word, Excel, PowerPoint, Outlook, and Access. You will learn about the features that are shared between all products in the Office suite, as well as the new features that are product specific.

  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now