Theo: doppelt interpolieren?

Beitrag lesen

Hallo,
folgendes Problem: ich möchte mit zwei Eingaben in einem String suchen und einen neu daraus zusammengesetzen ausgeben.

my $String = "abcdef 1234 xyz";
my $Search = "(\w+)(\d+)(\w+)";
my $NewOrder = "$3 $2 $1";

$Search und $NewOrder sind eigentlich variabel und werden von einer Eingabe eingelesen

if ($String =~ /$Search/) {
  print "$3 $2 $1";  # diese Zeile führt zum gewünschten Ergebnis
  print "$NewOrder";  # diese nicht
};

$NewOrder soll nicht fix sein, sondern von einer Eingabe stammen.
Wie bringe ich Perl dazu, mir die veränderte Reihenfolge auszugeben?
Mit einfachen oder doppelten Anführungszeichen oder q oder qq oder $ etc. bin ich nicht zum Ziel gekommen.
Wie kann ich "doppelt interpolieren"? Oder muss ich das ganze völlig anders konstruieren?
Danke für Hinweise.