Thread matching (9 answers)
Opened by Froschpopo at 2006-03-05 06:01

Linuxer
 2006-03-05 18:53
#63460 #63460
User since
2006-01-27
3887 Artikel
HausmeisterIn

user image
Hi,
schon mal den qr// Operator genutzt?
perldoc perlop
http://perldoc.perl.org/perlop.....-escape

Code: (dl )
1
2
3
4
5
6
7
8
9
10
my @list = (
qr/pattern1/,
qr/pattern2/,
qr/pattern3/,
qr{patter/patter not},
);

for my $line (@list ) {
if ( $string =~ $line ) { print "match\n"; }
}


qr// sollte Dir einen Fehler geben, sollte das definierte Pattern fehlerhaft sein. Somit kannst Du im Prinzip die Pattern prüfen lassen, bevor Du sie verwenden willst.

Btw. das Pattern "([0d-w9]ef+?)q" mag komisch ausschauen, ist aber syntaktisch korrekt!

Renees Code liefert Fehlermeldung bei fehlerhaftem Pattern:
Quote
$ perl
# achte auf die geöffnete Klammer im 2. Pattern
my @regexes = ('([\d\w]+)', 'another (Regex');

my $regex = join('|',@regexes);

if($string =~ /($regex)/){
print $1;
}
^D
Unmatched ( in regex; marked by <-- HERE in m/( <-- HERE ([\d\w]+)|another (Regex)/ at - line 6.
$
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 matching