Patrick Andrieu: reguläre Ausdrücke: Zeilenumbrüche?

Beitrag lesen

Hallo Siechfred!

Also ich erhalte keine Warnung (ActiveState Perl 5.8.8 unter Win2kPro).

Seltsam, seltsam... (hier ist ActiveState Perl 5.8.7, Win XP SP2).
Ein kompletter Test, direkt von der Konsole kopiert:

-------------
C:>perl -w
use strict;

my $t = "<form action='bla'>
<input type='text' value='2'>
<textarea></textarea>
</form>";

if($t =~ /<form.+form>/s) { print "wahr ($&)\n" }
    else { print "falsch\n" }

#############
my $string = "blabla
blabla";

if($string =~ !blabla(.*?)blabla!s) { print "wahr ($&)\n" }
Bareword found where operator expected at - line 17, near ")blabla"
        (Missing operator before blabla?)
    else { print "falsch\n" }
^Z
syntax error at - line 17, near "(."
Substitution replacement not terminated at - line 17.
-------------

?

Warum »substitution replacement»? Sieht so aus, wls würde er den Modifier s als Beginn einer Ersetzung sehen, alles davor ist unquoted also »Bareword«? Nur Warum?

Noch mal mit /:

-------------
C:>perl -w
use strict;

my $t = "<form action='bla'>
<input type='text' value='2'>
<textarea></textarea>
</form>";

if($t =~ /<form.+form>/s) { print "wahr ($&)\n" }
    else { print "falsch\n" }

#############
my $string = "blabla
blabla";

if($string =~ /blabla(.*?)blabla/s) { print "wahr ($&)\n" }
    else { print "falsch\n" }
^Z
wahr (<form action='bla'>
<input type='text' value='2'>
<textarea></textarea>
</form>)
wahr (blabla
blabla)
-------------

Korrekt...

Viele Grüße aus Frankfurt/Main,
Patrick

--

_ - jenseits vom delirium - _
[link:hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash]
Nichts ist unmöglich? Doch!
Heute schon gegökt?