Thread Frage zu Regex bei Ersetzen (8 answers)
Opened by tcicit at 2010-12-15 09:59

renee
 2010-12-15 10:21
#143599 #143599
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Dein Regulärer Ausdruck ist zu "gierig". ".*" versucht möglichst viele Zeichen zu treffen. Und der längste mögliche Treffer beginnt schon ab dem ersten ":".

So funktioniert es:

Code (perl): (dl )
$str =~ s/:[^:]*$//;


Damit sagst Du, dass nach dem ":" kein ":" mehr kommen darf. Und das trifft ja erst bei dem letzten ":" zu...
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 Frage zu Regex bei Ersetzen