Thread Teilstring zurückgeben
(9 answers)
Opened by maxritti at 2012-04-21 10:33
Hi,
2012-04-23T11:47:28 maxritti ich fragte nur nach "Warum Regex?" nicht "Warum Perl?" und aus Neugierde warum Du Dich auf Regex festlegst. Zum Üben und Ausprobieren ist das Beispiel schon verwendbar. Im produktiven Einsatz würde ich es anders lösen (wahrscheinlich mit einer split Lösung oder evtl. gar mit einem passenden Modul). In meinem Fall ist es ausgeschlossen, dass P= und I= vertauscht sind. [/quote] OK, ich wollte nur der Vollständigkeit halber darauf hinweisen. 2012-04-23T11:47:28 maxritti Da hatte ich einen Denkfehler. Guifreund hat ja auch schon drauf hingewiesen. Das erste (.+?) sammelt alles bis zum (ersten) Teilstring ,I= ein, auch andere Zuweisungen. .+ ist gierig und .+? ist nicht gierig. Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 my $str = "text "; # text mit 3 Leerzeichen am Ende # gierig schnappt sich auch die Whitespaces am Ende if ( $str =~ m/(.+)\s*$/ ) { print ">$1<\n"; } # nicht gierig schnappt sich die Whitespaces am Ende nicht if ( $str =~ m/(.+?)\s*$/ ) { print ">$1<\n"; } Last edited: 2012-04-24 12:22:22 +0200 (CEST) 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! |