Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"

Re: Modify a txt file

by Marshall (Abbot)
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?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://932546]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (4)
As of 2018-03-20 02:27 GMT
Find Nodes?
    Voting Booth?
    When I think of a mole I think of:

    Results (247 votes). Check out past polls.