Thread Regex: fangende Klammer in Wiederholungsklammer
(13 answers)
Opened by GUIfreund at 2014-10-21 13:42
Man könnte es auch in zwei Schritten machen:
Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 #! /usr/bin/perl -l use strict; use warnings; while ( <DATA> ) { # die ersten 1-5 X<foo> ab Zeilenanfang einfangen if ( $_ =~ m/^X(<\S+>(?: X<\S+>){0,4})/ ) { # splitten am " X" und die Klammern entfernen my @matches = map { s/^<|>$//g; $_ } split m/\s+X/, $1; # Kontrolle print join "--", @matches; } else { print STDERR "no matches."; } } __DATA__ X<$!> X<$ERRNO> X<$OS_ERROR> 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! |