my $string = "testx_testy"; my $in = "(testx_)(testy)"; my $out = '1'; test($string,$in,$out); sub test {  my $sub_string = shift;  my $sub_in = shift;  my $sub_out = shift;  print "$sub_string <=> $sub_in <=> $sub_out \n";  my @info = $sub_string =~ /$sub_in/;  $sub_string =~ s/$sub_in/$info[$sub_out]/g;  print "erg: $sub_string \n"; }