Thread Regulärer Ausdruck (22 answers)
Opened by IceRage at 2009-11-02 21:45

Linuxer
 2009-11-02 22:11
#127672 #127672
User since
2006-01-27
3882 Artikel
HausmeisterIn

user image
Damit werden für den Block, in dem die Zeile steht, Variablen lokal definiert, ohne die globalen Entsprechungen zu überschreiben.

Speziell sind das eben $, und $\, die auf den Wert von $/ gesetzt werden.

Die Bedeutung der Variablen kann in der perldoc perlvar nachgelesen werden:

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$, == $OUTPUT_FIELD_SEPARATOR 
The output field separator for the print operator. If defined, this value
is printed between each of print's arguments. Default is undef.
(Mnemonic: what is printed when there is a "," in your print statement.)

$\ == $OUTPUT_RECORD_SEPARATOR
The output record separator for the print operator. If defined, this value
is printed after the last of print's arguments. Default is undef.
(Mnemonic: you set $\ instead of adding "\n" at the end of the print.
Also, it's just like $/ , but it's what you get "back" from Perl.)

$/ == $INPUT_RECORD_SEPARATOR
... [zu viel Text zum Kopieren, bitte nachschlagen;
kurz: Default ist ein Zeilenumbruch enthalten]


Das heisst also, dass innerhalb des Blocks ab der Zeile die Variablen verändert sind. Sobald wir wieder ausserhalb des Blocks sind, gelten wieder die originalen Inhalte dieser Variablen.

Letzten Endes dient die local...-Zeile nur der schöneren Ausgabe des Arrays.
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!

View full thread Regulärer Ausdruck