Thread Haltbarkeit von $_[0] (9 answers)
Opened by bianca at 2010-04-02 08:36

renee
 2010-04-02 11:44
#135622 #135622
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
2010-04-02T06:36:04 bianca
Als Vergleich: $1 aus einem Regex ist ja auch nur bis zum nächsten Regex haltbar und wird dann neu belegt.
Das meine ich mit der Frage.


Das ist nicht ganz richtig. $1 wird beim nächsten *erfolgreichen* Match neu gesetzt:

Code: (dl )
1
2
3
4
jars@jars-desktop:~$ perl -wle 'my $var = "test"; $var =~ /.(..)/; print $1; $var =~ /noch/; print $1; $var =~ /test/; print $1' 
es
es
Use of uninitialized value in print at -e line 1.
Beim ersten erfolgreichen Match werden die zwei Buchstaben in $1 gespeichert. Danach folgt ein RegEx, der nicht matcht. $1 bleibt also erhalten. Als drittes ein erfolreicher Match, der aber nichts speichert. Deswegen ist $1 danach undef.
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/

View full thread Haltbarkeit von $_[0]