sumathigokul has asked for the wisdom of the Perl Monks concerning the following question:
Hi Monks,
Good day to all...
I have four input files as follows.
XOR_portmap file is as follows m : XOR2 port map (A=> in1, B=> enable_c, Y => output);
uut_names file is as follows M1 M2 M3
nets file is as follows a_c b_c c_c
enabled_nets file is as follows a_e b_e c_e
My perl script has to read XOR_portmap file and write to XOR_portmap_nets with substitution in for loop. i.e it should substitute m in XOR_portmap file by 1st, 2nd, 3rd element of uut_names and in1 by 1st, 2nd, 3rd element of nets_names and output by 1st, 2nd, 3rd element of enabled_nets...
Here is the code i wrote and the output file it generates....i attached my expected output file also... Correct the mistake in the code monks... Thank you all...
use strict; use warnings; open (IN1, "<XOR_portmap.txt") or die; open (IN2, "<uut_names.txt") or die; open (IN3, "<nets.txt") or die; open (IN4, "<enabled_nets.txt") or die; open (OUT, ">>XOR_portmap_nets.txt") or die; my @uut_names = <IN2>; my @nets = <IN3>; my @enabled_nets = <IN4>; chomp @uut_names; chomp @nets; chomp @enabled_nets; while (<IN1>) { foreach my $i ( 0..$#nets ) { print OUT if ((s/m/$uut_names[$i]/) && (s/in1/$nets[$i]/) && ( +s/output/$enabled_nets[$i]/)); } } close (IN1); close (IN2); close (IN3); close (IN4); close (OUT);
XOR_portmap_nets file generated for this code is as follows..
M1 : XOR2 port map (A=> a_c , B=> enable_c, Y => a_e );
One more question is, why is it doing each substitution at newline only, instead of writing it as M1: XOR2 port map (A=> a_c, B=> enable_c, Y => a_e); (in single line)
But, i want XOR_portmap_nets file (my expected output file) as follows..
M1 : XOR2 port map (A=> a_c, B=> enable_c, Y => a_e); M2 : XOR2 port map (A=> b_c, B=> enable_c, Y => b_e); M3 : XOR2 port map (A=> c_c, B=> enable_c, Y => c_e);
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: Does problem is in the for loop???
by marto (Cardinal) on May 11, 2015 at 09:30 UTC | |
by sumathigokul (Acolyte) on May 11, 2015 at 09:39 UTC | |
by marto (Cardinal) on May 11, 2015 at 10:00 UTC | |
by afoken (Chancellor) on May 11, 2015 at 10:21 UTC | |
by marto (Cardinal) on May 11, 2015 at 10:24 UTC | |
Re: Does problem is in the for loop???
by pme (Monsignor) on May 11, 2015 at 06:47 UTC |