Thread Regex: String aufteilen, Substrings in variablen schreiben (1 answers)
Opened by radon at 2010-11-09 19:03

pq
 2010-11-09 19:31
#142599 #142599
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
wenn $1 etc. leer sind, dann matcht die regex vermutlich nicht.
an der stelle kannst du dir gleich angewöhnen:
immer auf den erfolg des matches prüfen, und dann erst die digit-variablen benutzen, denn diese können bei einem nicht erfolgreichen match sogar noch werte von vorherigen matches beinhalten.
also:
Code (perl): (dl )
1
2
3
if ($string =~ m/.../) {
    # mach was mit $1, $2, ...
}


der nächste schritt ist, herauszufinden, warum die regex nicht matcht.
du kannst anfangen, die regex so zu verkürzen, bis sie matcht und dann den fehler herausfinden. wenn du keinen fehler erkennst, dann kannst du den string auch mal hier posten, und zwar, um sicherzugehen, mit folgendem code:
Code (perl): (dl )
1
2
3
use Data::Dumper;
local $Data::Dumper::Useqq = 1;
print Dumper $string;


dadurch ist sichergestellt, dass alle nicht-druckbaren zeichen in perl-schreibweise sichtbar gemacht werden.
Last edited: 2010-11-09 19:32:39 +0100 (CET)
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem

View full thread Regex: String aufteilen, Substrings in variablen schreiben