Thread Regulärer Ausdruck, über mehrere Zeilen (3 answers)
Opened by robert at 2010-03-02 09:50

Linuxer
 2010-03-02 10:02
#133862 #133862
User since
2006-01-27
3891 Artikel
HausmeisterIn

user image
Hi,

ein einfacher regex beendet das Matching beim ersten Treffer, daher sollte das hier beispielsweise funktionieren (ungetestet):

Code (perl): (dl )
1
2
3
4
5
my $text = 'query=bla,viel_anderer_text,length=4,nochmal anderer text';

if ( $text =~ m/(length=\d+)/ ) {
  print "Treffer: $1\n";
}


edit: nun mit Test (auf der Konsole):
Code: (dl )
1
2
$ perl -wle 'my $v ="very\nlong\ntext\nlength=44\nanother\ntext.\nlength=0"; if ( $v =~ m/(length=\d+)/ ) { print "Treffer: $1\n"; } '
Treffer: length=44

Last edited: 2010-03-02 10:10:34 +0100 (CET)
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, über mehrere Zeilen