#! /usr/bin/perl -w
$re=qr/foo$/;
print $re; print "\n";
print "foo\\nbar\\n =~ \/$re\/s \t";
print "foo\nbar\n" =~ /$re/s ?"true":"false"; print "\n";
print "foo\\nbar\\n =~ \/$re\/m \t";
print "foo\nbar\n" =~ /$re/m ?"true":"false"; print "\n";
#
print "fred\\nfoo\\nbar\\n =~ \/$re\/s \t";
print "fred\nfoo\nbar\n" =~ /$re/s ?"true":"false"; print "\n";
print "fred\\nfoo\\nbar\\n =~ \/$re\/m \t";
print "fred\nfoo\nbar\n" =~ /$re/m ?"true":"false"; print "\n";
#
print "foo =~ \/$re\/s \t";
print "foo" =~ /$re/s ?"true":"false"; print "\n";
print "foo =~ \/$re\/m \t";
print "foo" =~ /$re/m ?"true":"false"; print "\n";
print "\\nfoo =~ \/$re\/s \t";
print "\nfoo" =~ /$re/s ?"true":"false"; print "\n";
print "\\nfoo =~ \/$re\/m \t";
print "\nfoo" =~ /$re/m ?"true":"false"; print "\n";
print "foobar =~ \/$re\/s \t";
print "foobar" =~ /$re/s ?"true":"false"; print "\n";
print "foobar =~ \/$re\/m \t";
print "foobar" =~ /$re/m ?"true":"false"; print "\n";
print "bar\\nfoo\\n =~ \/$re\/s \t";
print "bar\nfoo\n" =~ /$re/s ?"true":"false"; print "\n";
print "bar\\nfoo =~ \/$re\/m \t";
print "bar\nfoo" =~ /$re/m ?"true":"false"; print "\n";
print "bar\\nfoo\\n =~ \/$re\/ \t";
print "bar\nfoo\n" =~ /$re/ ?"true":"false"; print "\n";
print "foo\\nbar\\n =~ \/$re\/ \t";
print "foo\nbar\n" =~ /$re/ ?"true":"false"; print "\n";
print "fred\\nfoo\\nbar\\n =~ \/$re\/ \t";
print "fred\nfoo\nbar\n" =~ /$re/ ?"true":"false"; print "\n";
print "fred\\nfoo\\nbar\\n =~ \/$re\/ \t";
print "fred\nfoo\nbar\n" =~ /$re/ ?"true":"false"; print "\n";
print "foo =~ \/$re\/ \t";
print "foo" =~ /$re/ ?"true":"false"; print "\n";
print "foobar =~ \/$re\/ \t";
print "foobar" =~ /$re/ ?"true":"false"; print "\n";
print "\\nfoo =~ \/$re\/ \t";
print "\nfoo" =~ /$re/ ?"true":"false"; print "\n";
####
(?^:foo$)
foo\nbar\n =~ /(?^:foo$)/s false
foo\nbar\n =~ /(?^:foo$)/m false
fred\nfoo\nbar\n =~ /(?^:foo$)/s false
fred\nfoo\nbar\n =~ /(?^:foo$)/m false
foo =~ /(?^:foo$)/s true
foo =~ /(?^:foo$)/m true
\nfoo =~ /(?^:foo$)/s true
\nfoo =~ /(?^:foo$)/m true
foobar =~ /(?^:foo$)/s false
foobar =~ /(?^:foo$)/m false
bar\nfoo\n =~ /(?^:foo$)/s true
bar\nfoo =~ /(?^:foo$)/m true
bar\nfoo\n =~ /(?^:foo$)/ true
foo\nbar\n =~ /(?^:foo$)/ false
fred\nfoo\nbar\n =~ /(?^:foo$)/ false
fred\nfoo\nbar\n =~ /(?^:foo$)/ false
foo =~ /(?^:foo$)/ true
foobar =~ /(?^:foo$)/ false
\nfoo =~ /(?^:foo$)/ true
####
/m /s none
foo/bar/ F F F
fred/foo/bar F F F
foo T T T
/foo T T T
foobar F F F
bar/foo/ T T T
bar/foo T T T