Hallo,
foreach my $wert(@werte) {
if ($wert =~ /$zahl(1-6)/) {
### mach dies und das
}
else {
### mach das und jenes
}
}
So wie ich das sehe, 'verwirrt'
if ($wert =~ /$zahl(1-6)/) {
ein bißchen. Das verwendest Du wohl nicht so in dieser Form, um $wert mit den Inhalten von $zahl1 bis $zahl6 zu vergleichen, oder? Weil dann ist es kein Wunder, daß es nicht funktioniert.
Wenn ich das mal außer acht lasse[1], dann wird an und für sich schon so gemacht, daß zuerst $wert[0] mit der angegebenen[2] Regex verglichen wird, dann $wert[1] usw.
Grüße
Klaus
[1] ... mir irgendwie aber bewußt bin, daß wahrscheinlich da der 'Hund begraben' liegt.
[2] Als ich noch in der Maschinenbaubranche war, und CAD in Österreich bzw. Europa noch kein Thema war, war das Wort 'angegebenen' jedes Mal eine Herausforderung. Nämlich dann, wenn es mit einer Normschablone auf eine Zeichnung 'gepinselt' werden mußte. Also praktisch auf jeder Zeichnung;-)