Latest web development tutorials

Perl Spezielle Variablen

Perl Sprache definiert eine spezielle Variable, in der Regel $, @ oder% als Präfix, zum Beispiel: $ _.

Viele spezielle Variablen haben einen sehr langen englischen Namen, Betriebssystemvariable $! Kann als OS_ERROR $ geschrieben werden.

Wenn Sie den englischen Namen eines speziellen Variablen im Programm verwenden möchten , müssen den KopfVerwendung Englisch hinzuzufügen ;.Diese englischen Spezialvariablen beschreibend.

Die am häufigsten verwendete spezielle Variable $ _ enthält die Variable den Standardeingabe und Muster passende Inhalte. Beispiele sind wie folgt:

#!/usr/bin/perl

foreach ('Google','w3big','Taobao') {
	print $_;
	print "\n";
}

Das obige Programm, das Ausgabe ist:

Google
w3big
Taobao

Das folgende Beispiel, das wir $ _ zur Ausgabe nicht verwenden:

#!/usr/bin/perl

foreach ('Google','w3big','Taobao') {
	print;
	print "\n";
}

Das obige Programm, das Ausgabe ist:

Google
w3big
Taobao

Beispielsweise der erste Ausgang "Google", dann output "w3big", die endgültige Ausgabe "Taobao".

In der Iterationsschleife Stromschleife der Zeichenkette in $ _ und dann durch die Druckausgabe. Drucken auch ohne die Ausgangsgröße Angabe von Standard von $ verwendet wird _.

Im Folgenden sind einige Staaten auch ohne Perl $ annehmen _ Ort:

  • Monokulare verschiedene Funktionen, unter anderem als ord () und int () Funktion, und so zusätzlich zu "-t" alle Dateitests ( "-f", "- d"), "- t" Standardaktion STDIN.
  • Eine Liste der verschiedenen Funktionen, wie zum Beispiel print () und unlink ().
  • Verwenden Sie die "= ~" Operator-Modus nicht, wenn die Anpassungsoperation "m //", "s ///" und "tr ///".
  • Wenn andere Variablen nicht "foreach" loop Iterationsvariable Standard gegeben.
  • Implizite Iterationsvariable grep () und Karte () Funktion.
  • Wenn ", während" nur einzige Bedingung, und die Bedingung das Ergebnis von "test" Betrieb ist, _ $ ist die Standardposition der Eingabedatensätze für die Speicherung. Zusätzlich zu den "while" Testbedingungen, die nicht passieren würde. (Mnemonic: unterstreichen, in einer bestimmten Operation kann weggelassen werden.)

Spezielle Variablentypen

Nach Angaben der besonderen Art der Verwendung von Variablen lassen sich in folgende Kategorien unterteilt werden:

  • Spezielle globale Skalarvariable.

  • Spezielle globale Array-Variable.

  • Hash spezielle globale Variablen.

  • Globale spezielle Datei-Handle.

  • Globale spezielle Konstante.

  • Regex spezielle Variablen.

  • Datei behandeln spezielle Variablen.

Spezielle globale Skalarvariable

Es folgt eine Liste aller Sonder Skalarvariable mit Sonderzeichen und Englisch in Form von Variablen:

$ _ Der Standardeingabe und Muster passende Inhalte.
$ ARG
$. Zurück Lese aktuelle Zeilennummer der Datei-Handles
$ NR
$ / Eingabe voneinander zu trennen sind, wird standardmäßig ein Newline-Zeichen. Wie bei undef Diese Variable wird das Ende der Datei gelesen.
$ RS
$, Ausgabefeld Separator
$ OFS
$ \ Der Ausgangsdatensatz-Trenn
$ ORS
$ " Das gleiche $ variable, ähnlich, aber auf die in doppelte Anführungszeichen (oder ähnliche String-Interpolation) eingeschlossen String angewendet wird, innerhalb der Anordnung von Gelegenheiten und in Scheiben schneiden Werte eingefügt. Der Standardwert ist ein Leerzeichen.
$ LIST_SEPARATOR
$; Trennzeichen verwendet, wenn ein mehrdimensionales Array-Emulation. Die Standardeinstellung ist "\ 034."
$ SUBSCRIPT_SEPARATOR
$ ^ L Sent auf die Ausgangskanäle des Papiervorschub-Zeichen nehmen. Die Standardeinstellung ist "\ f".
$ FORMAT_FORMFEED
$: Der aktuelle Satz von Zeichen, nach denen eine Zeichenfolge gebrochen werden kann Fortsetzung Felder (beginnend mit ^) in einem Format. Die Standardeinstellung ist "\ n" "zu füllen.
$ FORMAT_LINE_BREAK_CHARACTERS
$ ^ A Vor dem Drucken variabler Datenformat zum Speichern
$ AKKU
$ # Wenn Sie Digitaldruck digitale Standardausgabeformat (veraltet).
$ OFMT
$? Rückkehr zum Zustand eines externen Befehl
$ CHILD_ERROR
$! Numerisch Wert dieser Variablen wird der Wert von errno ist, ist String-Wert der entsprechenden Systemfehler Zeichenfolge
$ OS_ERROR oder $ ERRNO
$ @ Der Befehl eval Fehlermeldung, wenn er leer ist, bedeutet dies das letzte abgeschlossene eval Befehl erfolgreich
$ EVAL_ERROR
$$ Perl-Skript die aktuelle Prozess-ID ausführen
$ PROCESS_ID oder $ PID
$ < Die tatsächlichen Abonnentenzahlen des aktuellen Prozesses
$ REAL_USER_ID oder $ UID
$> Effektive Benutzernummer des aktuellen Prozesses
$ EFFECTIVE_USER_ID oder $ EUID
$ ( Der aktuelle Prozess tatsächliche Anzahl von Benutzergruppen
$ REAL_GROUP_ID oder $ GID
$) Der aktuelle Prozess der effektiven Benutzer-Gruppennummer
$ EFFECTIVE_GROUP_ID oder $ EGID
$ 0 Der Dateiname enthält das Skript ausgeführt wird,
$ PROGRAM_NAME
$ [ Index des ersten Elements des Arrays von Arrays ist die Standard 0.
$] Perl-Versionsnummer
$ PERL_VERSION
$ ^ D Der Wert des Debug-Flag
$ debugging
$ ^ E In Nicht-UNIX-Betriebssystemumgebungen Fehlerinformationen erweitert
$ EXTENDED_OS_ERROR
$ ^ F Maximale Dateikennungswert des Bündels
$ SYSTEM_FD_MAX
$ ^ H Aktiviert durch den Compiler Syntaxprüfung Status
$ ^ I Integrierte Steuerwert des Editors
$ INPLACE_EDIT
$ ^ M Größe Ersatzspeicherpool
$ ^ O Name des Betriebssystems
$ OSNAME
$ ^ P Gibt den aktuellen Debugger interne Variablenwert
$ PERLDB
$ ^ T Seit Beginn des neuen Jahrhunderts, das Tempo der Sekunden startet die Zeit zu laufen
$ BASETIME
$ ^ W Der aktuelle Wert des Warnschalter
$ WARNUNG
$ ^ X Perl binären ausführbaren Code Name
$ EXECUTABLE_NAME
$ ARGV Name der aktuellen Datei aus dem Standarddateihandle gelesen werden, wenn

Spezielle globale Array-Variable

@ARGV Um das Skript Befehlszeilenargument Liste
@INC Wenn Sie das Modul Verzeichnisliste importieren werden gesucht
@F Geben Sie den Befehl Line-Array

Hash spezielle globale Variablen

% INC

Hash% INC enthält alle Dateien mit einem Do oder erfordern Aussagen Schlüsselwort ist der Dateiname, ist der Wert, der Pfad der Datei

% ENV

Mit den aktuellen Umgebungsvariable

% SIG

Signalliste und wie zu tun

Globale spezielle Datei-Handle

ARGV

Spezielle Datei-Handle durch die Array-Variable @ARGV alle Dateinamen

STDERR

Standardausgabe Griff Fehler

STDIN

Standard-Eingabe Griff

STDOUT

Standardausgabe Griff

DATA

Spezielle Datei-Handle Referenz jeder Inhalt __END__ Flag in der Datei, nachdem der Inhalt des Skripts enthält. Oder ein Verweis auf den gesamten Content-Datei enthält __DATA__ Flag nach, so lange wie Sie in den gleichen Paketdaten gelesen haben, __ DATA__ dort.

_ (Unders)

Spezielle Datei-Handle-Cache-Dateien für Informationen (fstat, stat und lstat).

Globale spezielle Konstante

__END__

Das logische Ende des Skripts, der Text nach ignoriert.

__FILE__

Name der aktuellen Datei

__LINE__

Die aktuelle Zeilennummer

__PACKAGE__

Der aktuelle Paketname, ist die Standard-Paketnamen main.

Regex spezielle Variablen

$ N

Mit dem letzten Muster n-ten String-Matching

$ &

Zurück erfolgreichen Muster passende String

$ MATCH

$ `

Letzte Teilzeichen den Erfolg des vorherigen passende Inhalte

$ PREMATCH

$ '

Inhalt letzten erfolgreichen Spiel nach Teilzeichenfolge

$ POSTMATCH

$ +

Und der letzte Suche mit regulären Ausdrücken letzte Klammer passende Format. Zum Beispiel:

/Version: (.*)|Revision: (.*)/ && ($rev = $+);

$ LAST_PAREN_MATCH

Datei-Handle spezielle Variablen

$ |

Wenn auf Null nach jedem Funktionsaufruf Schreib- oder Druck gesetzt, ruft automatisch die Funktion fflush, geschrieben Inhalt der Datei schreiben wird

$ OUTPUT_AUTOFLUSH

$%

Die aktuelle Ausgabe Seitennummer

$ FORMAT_PAGE_NUMBER

$ =

Die aktuelle Seitenlänge. Der Standardwert ist 60.

$ FORMAT_LINES_PER_PAGE

$ -

Die aktuelle Seite Anzahl der Zeilen verbleibenden

$ FORMAT_LINES_LEFT

$ ~

Der aktuelle Name des Berichts Ausgabeformat. Der Standardwert ist der Name der Datei-Handle.

$ format_name

$ ^

Der aktuelle Bericht Ausgabetabellenname Header-Format. Der Standardwert ist mit dem Zusatz "_TOP" Datei-Handle-Namen.

$ FORMAT_TOP_NAME