Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine

Re: File Find/Replace with the replacement coming from part of earlier matched string

by tmharish (Friar)
on Feb 05, 2013 at 06:25 UTC ( #1017069=note: print w/replies, xml ) Need Help??

in reply to File Find/Replace with the replacement coming from part of earlier matched string

RegEx on multiple lines that might be large with look-ahead can really slow things down.

There is no need to hold onto chunks of anything - all you need is the PC name and you are fine up to when you see the next PC name.

The following chunk of code does that:

use strict ; use warnings ; my @log_data = <DATA> ; my $current_pc_name ; foreach my $log_line ( @log_data ) { chomp( $log_line ); next unless( $log_line ) ; my ( $left, $right ) = split( /\:/, $log_line ) ; if( $left eq 'PCName' ) { $current_pc_name = $right ; next ; } unless( $current_pc_name ) { die( "Command $log_line assigned to no PC!!" ) ; } print "PCName:$current_pc_name\n" ; print "$log_line\n\n" ; } __DATA__ PCName: Foo1 Command1:dfie Command2:dfo Command3:dfum PCName: Foo2 Command1:dfie Command2:dfo Command3:dfum


PCName: Foo1 Command1:dfie PCName: Foo1 Command2:dfo PCName: Foo1 Command3:dfum PCName: Foo2 Command1:dfie PCName: Foo2 Command2:dfo PCName: Foo2 Command3:dfum

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1017069]
[Discipulus]: i miss what an undocumented instructions can be, and how can be used
[zentara]: perf
[marto]: X86_instruction_li stings
[marto]: Illegal_opcode
[zentara]: marto arn't those NSA secrets? :-)
[marto]: not if you keep telling people :P
[zentara]: I had to disable hyperthreading on my machine because of that.
[Discipulus]: thanks marto but... at the moment this seems a bit beyond my faculties.. ;=)
[zentara]: a thread goes into a wait state after emitting a wait to all other threads. It locks up a machine completely.
[marto]: if you mean the recent hyperthreading bug, I don't think that's NSA related?

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (10)
As of 2017-07-28 12:08 GMT
Find Nodes?
    Voting Booth?
    I came, I saw, I ...

    Results (428 votes). Check out past polls.