Ich habe diese Regex gemacht, um OS-Namen zu einer Zeile in einer VMX-Datei zu vergleichen. Es begann als separate elsif
Statements, aber ich landete in einer einzigen if
Statment. Wie auch immer, hier ist der Code; Ich versuche, einen Weg zu finden, den Code sauberer zu machen, aber er setzt jedes Match in eine separate Zeile; es funktioniert nicht mehr.Wie kann ich diesen REGEX sauberer machen?
elsif ($vmx_file =~ m/guestOSAltName\s+=\s"Microsoft\sWindows\sServer\s2003,Web\sEdition"|"Microsoft\sWindows\sSmall\sBusiness\sServer\s2003"|"Microsoft\sWindows\s2000\sAdvanced\sServer"|"Microsoft\sWindows\s2000\sServer"|"Microsoft\sWindows\s2000\sProfessional"|"Microsoft\sWindows\s98"|"Microsoft\sWindows\s95"|"Microsoft\sWindows\sNT\s4"/) {
$virtual_machines{$vm}{"Architecture"} = "32-bit";
aktualisiert Code per Anregungen,
elsif ($vmx_file =~ m/guestOSAltName\s+=\s"Microsoft\sWindows\sServer\s2003,Web\sEdition|Small\sBusiness\sServer\s2003|"2000\sAdvanced\sServer|2000\sServer|2000\sProfessional|98|95|NT\s4/) {
$virtual_machines{$vm}{"Architecture"} = "32-bit";
Wow, dass Regex-Ausdruck jetzt TINY ist. – ianc1215
Funktioniert perfekt, ich gebe Ihnen die "Antwort". – ianc1215