Thread Auswertung des Ergebnisses einer Variable
(8 answers)
Opened by tecker at 2008-07-21 17:51
Ich frage mich, wie klar du dir darüber bist, was du da tust, bzw. was du tun willst, tecker. Denn davon hängt die Antwort auf deine Frage ab.
Was genau willst du damit erreichen, dass du die Bedingung als String ablegst? Willst du... - den Zeitpunkt der Ausführung hinauszögern? Dann verwende am besten eine anonyme Subroutine: Code (perl): (dl
)
1 2 3 4 5 my $variable = sub {$number =~ m/(9*0*)/}; # ... if ($variable->()){ # ... } - die Prüfung ausgeben? Dann speicher vielleicht nur den Regex als String und gib ihn später aus: Code (perl): (dl
)
1 2 3 4 5 6 7 8 my $regex = qr/(9*0*)/; my $variable = $number =~ m/$regex/; my $ref = \$variable; # ... if ($$ref){ print LOG "REF: $regex\n"; # ... } Vielleicht musst du das Ergebnis des Tests irgendwie zusammen mit dem Regex speichern, um später zuordnen zu können, welcher Test welchen Regex verwendet. - die Prüfung textbasiert zwischenspeichern? Dann speicher den String und verwende eval, um ihn später auszuführen. Aber wann soll $number ausgewertet werden? Vor oder nach dem Speichern? Wenn danach, dann musst du einfache Anführungszeichen verwenden: Code (perl): (dl
)
1 2 3 4 5 6 my $variable = '$number =~ m/(9*0*)/'; my $ref = \$variable; # ... if (eval $$ref){ # ... } Ich hoffe das hilft... :) |