AlexmMorozo
Technical User
Hi!
I have some q.!
See the example pls.
file "RES":
@T=();
x u y_inv 1 1 0 14 ===> i need
==>@T=("x","u","y_inv"
;
x s_inv t 1 1 0 14
v r_inv u 1 1 0 14==>
==>@T=("x","u","y_inv","v",&quo t;t_inv","w"
;
v t_inv w 1 1 0 14
v t u_inv 1 1 0 14
x u_inv z_inv 1 1 0 14
v s_inv y 1 1 0 14
v u y_inv 1 1 0 14
v r u_inv 1 1 0 14
x r s_inv 1 1 0 14
v t_inv u 1 1 0 14
v s_inv z_inv 1 1 0 14
x u z 1 1 0 14
x w z 1 1 0 14
x s_inv z_inv 1 1 0 14
v r_inv s 1 1 0 14
x u_inv y 1 1 0 14
x r w_inv 1 1 0 14
...
p s z 1 2 0 13 ==>
==>@T=("x","u","y_inv","v","t_inv","w","p","s","z"
;
v u_inv w_inv 1 15 0 0
p s_inv t_inv 1 15 0 0
v r_inv t 1 0 15
my wrong script:
@T=();
open (FH4,"<RES"
;
while(<FH4>)
{
chomp();
s/\s+/ /g;
split(' ');
$num++;
$out1=$_[0];
$out2=$_[1];
$out3=$_[2];
my $st1=$out1=~/(.+?)_/?$1:$out1;
my $st2=$out2=~/(.+?)_/?$1:$out2;
my $st3=$out3=~/(.+?)_/?$1:$out3;
if(($st1 ne $st2) && ($st1 ne $st3) && ($st2 ne $st3))
{
print " $num> $out1 $out2 $out3 \n"; last if(++$n>3);
push @TROYIKI,"$out1 $out2 $out3";
if ($n==9){ last}
}
}
close FH4;
############################
STDOUT:
1> x u y_inv ----- ok!
2> x s_inv t ----- wrong! must => v r_inv w
3> v r_inv u ----- wrong! must => p s z
@T: x u y_inv x s_inv t v r_inv u --wrong!
#############################
Dream
!
@T= (x u y_inv x s_inv t v r_inv u);
0 1 2 3 4 5 6 7 8
with best regards and than's!,
Al.
I have some q.!
See the example pls.
file "RES":
@T=();
x u y_inv 1 1 0 14 ===> i need
==>@T=("x","u","y_inv"
x s_inv t 1 1 0 14
v r_inv u 1 1 0 14==>
==>@T=("x","u","y_inv","v",&quo t;t_inv","w"
v t_inv w 1 1 0 14
v t u_inv 1 1 0 14
x u_inv z_inv 1 1 0 14
v s_inv y 1 1 0 14
v u y_inv 1 1 0 14
v r u_inv 1 1 0 14
x r s_inv 1 1 0 14
v t_inv u 1 1 0 14
v s_inv z_inv 1 1 0 14
x u z 1 1 0 14
x w z 1 1 0 14
x s_inv z_inv 1 1 0 14
v r_inv s 1 1 0 14
x u_inv y 1 1 0 14
x r w_inv 1 1 0 14
...
p s z 1 2 0 13 ==>
==>@T=("x","u","y_inv","v","t_inv","w","p","s","z"
v u_inv w_inv 1 15 0 0
p s_inv t_inv 1 15 0 0
v r_inv t 1 0 15
my wrong script:
@T=();
open (FH4,"<RES"
while(<FH4>)
{
chomp();
s/\s+/ /g;
split(' ');
$num++;
$out1=$_[0];
$out2=$_[1];
$out3=$_[2];
my $st1=$out1=~/(.+?)_/?$1:$out1;
my $st2=$out2=~/(.+?)_/?$1:$out2;
my $st3=$out3=~/(.+?)_/?$1:$out3;
if(($st1 ne $st2) && ($st1 ne $st3) && ($st2 ne $st3))
{
print " $num> $out1 $out2 $out3 \n"; last if(++$n>3);
push @TROYIKI,"$out1 $out2 $out3";
if ($n==9){ last}
}
}
close FH4;
############################
STDOUT:
1> x u y_inv ----- ok!
2> x s_inv t ----- wrong! must => v r_inv w
3> v r_inv u ----- wrong! must => p s z
@T: x u y_inv x s_inv t v r_inv u --wrong!
#############################
Dream
@T= (x u y_inv x s_inv t v r_inv u);
0 1 2 3 4 5 6 7 8
with best regards and than's!,
Al.