Vordefinierte Skalare

Aus Wiki.csoft.at

Skalar Erklärung Beispiel
$_ Enthält den jeweils aktuellen Wert (Eingabe, Suche, usw.).
@Zahlen = (1..10);
for(@Zahlen)
{ print $_, "\n"; };
$. Enthält die aktuelle Zeilennummer der zuletzt eingelesenen Datei.
open(DATEI, "<readme.txt");
while(<DATEI>){print $_;}
print $., " Zeilen gelesen";close(DATEI);
$/ Enthält den eingestellten Eingabeseparator. Kann geändert werden - auch mehrere Zeichen sind erlaubt.
$/ = "ENDE";# statt \n ist nun "ENDE" das Zeilenende
$Eingabe = <STDIN>;print $Eingabe;
$] Enthält die Versionsnummer des verwendeten Perl-Interpreters.
print $];
$! Enthält die aktuelle Fehlermeldung oder Fehlernummer, sofern ein Fehler aufgetreten ist.
open(DATEI, "<nixda.txt") || print $!;
$0 Enthält den Dateinamen des Perl-Scripts, das gerade ausgeführt wird.
print $0;
$$ Enthält die Prozeß-ID des Perl-Scripts, das gerade ausgeführt wird.
$tempdatei = "Data." . $$;
$^T Enthält den genauen Zeitpunkt (Millisekunden), zu dem das Script gestartet wurde.
$Start = $^T; $Jetzt = time;
print "Laufzeit: ", $Jetzt - $Start, " ms\n";
$& Enthält nach Anwenden eines regulären Ausdrucks den Wert, auf den das Suchmuster paßte.
$Satz = "Katz und Maus";
$Satz =~ /\bund\b.*/;
print $&;
$+ Enthält nach Anwenden eines regulären Ausdrucks mit Klammern den Inhalt der Klammer, die mit dem letzten Suchmuster übereinstimmte.
$Satz = "Katz und Maus";
$Satz =~ /(\bund\b).*/;
print $+; 
$1, $2, ... Enthält nach Anwenden eines regulären Ausdrucks mit Klammern die Werte der Klammern 1, 2 usw., auf die das in der jeweiligen Klammer definierte Suchmuster paßte.
$Satz = "Hund und Katz und Maus";
$Satz =~ /(\bund\b).*/;
print "$1 $2";