Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Re: Modify a txt file

by Marshall (Monsignor)
on Oct 20, 2011 at 03:18 UTC ( #932546=note: print w/replies, xml ) Need Help??


in reply to Modify a txt file

Given that the input file has a very large number of lines, I would try to just process the file line by line (no slurping the file into a single $file_content or @lines).

Here is one way:

#/usr/bin/perl -w use strict; my $cur_num; while (<DATA>) { $cur_num = $1 if (/^(\d+)/); # new $cur num if line starts # with digits s/(\S+)$/$cur_num/; # substitute the non-spaces at the end # of the line with the cur_num print; #a blank line is not modified } =Prints 0 0 0 0 13 13 13 28 28 28 42 42 42 42 55 55 55 55 55 =cut __DATA__ 0 ASDF ASEE ASEE 13 DERG DREG 28 QWER QWER 42 WERT WERT WERT 55 QWEASD QWEASD QWEASD QWEASD

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://932546]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (3)
As of 2016-09-28 03:38 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Extraterrestrials haven't visited the Earth yet because:







    Results (518 votes). Check out past polls.