166 lines
4.5 KiB
Plaintext
166 lines
4.5 KiB
Plaintext
regcomp.c AOK
|
|
|
|
Strange *+?{} on zero-length expression [S_study_chunk]
|
|
/(?=a)?/
|
|
|
|
%.*s matches null string many times [S_regpiece]
|
|
$a = "ABC123" ; $a =~ /(?=a)*/'
|
|
|
|
/%.127s/: Unrecognized escape \\%c passed through [S_regatom]
|
|
$x = '\m' ; /$x/
|
|
|
|
Character class [:%.*s:] unknown [S_regpposixcc]
|
|
|
|
Character class syntax [. .] is reserved for future extensions [S_regpposixcc]
|
|
|
|
Character class syntax [= =] is reserved for future extensions [S_checkposixcc]
|
|
|
|
Character class syntax [%c %c] belongs inside character classes [S_checkposixcc]
|
|
|
|
/%.127s/: false [] range \"%*.*s\" in regexp [S_regclass]
|
|
|
|
/%.127s/: false [] range \"%*.*s\" in regexp [S_regclassutf8]
|
|
|
|
/%.127s/: Unrecognized escape \\%c in character class passed through" [S_regclass]
|
|
|
|
/%.127s/: Unrecognized escape \\%c in character class passed through" [S_regclassutf8]
|
|
|
|
__END__
|
|
# regcomp.c [S_regpiece]
|
|
use warnings 'regexp' ;
|
|
my $a = "ABC123" ;
|
|
$a =~ /(?=a)*/ ;
|
|
no warnings 'regexp' ;
|
|
$a =~ /(?=a)*/ ;
|
|
EXPECT
|
|
(?=a)* matches null string many times at - line 4.
|
|
########
|
|
# regcomp.c [S_study_chunk]
|
|
use warnings 'regexp' ;
|
|
$_ = "" ;
|
|
/(?=a)?/;
|
|
no warnings 'regexp' ;
|
|
/(?=a)?/;
|
|
EXPECT
|
|
Strange *+?{} on zero-length expression at - line 4.
|
|
########
|
|
# regcomp.c [S_regatom]
|
|
$x = '\m' ;
|
|
use warnings 'regexp' ;
|
|
$a =~ /a$x/ ;
|
|
no warnings 'regexp' ;
|
|
$a =~ /a$x/ ;
|
|
EXPECT
|
|
/a\m/: Unrecognized escape \m passed through at - line 4.
|
|
########
|
|
# regcomp.c [S_regpposixcc S_checkposixcc]
|
|
BEGIN { $ENV{PERL_DESTRUCT_LEVEL} = 0 unless $ENV{PERL_DESTRUCT_LEVEL} > 3 }
|
|
use warnings 'regexp' ;
|
|
$_ = "" ;
|
|
/[:alpha:]/;
|
|
/[.bar.]/;
|
|
/[=zog=]/;
|
|
/[[:alpha:]]/;
|
|
/[[.foo.]]/;
|
|
/[[=bar=]]/;
|
|
/[:zog:]/;
|
|
/[[:zog:]]/;
|
|
no warnings 'regexp' ;
|
|
/[:alpha:]/;
|
|
/[.foo.]/;
|
|
/[=bar=]/;
|
|
/[[:alpha:]]/;
|
|
/[[.foo.]]/;
|
|
/[[=bar=]]/;
|
|
/[[:zog:]]/;
|
|
/[:zog:]/;
|
|
EXPECT
|
|
Character class syntax [: :] belongs inside character classes at - line 5.
|
|
Character class syntax [. .] belongs inside character classes at - line 6.
|
|
Character class syntax [. .] is reserved for future extensions at - line 6.
|
|
Character class syntax [= =] belongs inside character classes at - line 7.
|
|
Character class syntax [= =] is reserved for future extensions at - line 7.
|
|
Character class syntax [. .] is reserved for future extensions at - line 9.
|
|
Character class syntax [= =] is reserved for future extensions at - line 10.
|
|
Character class syntax [: :] belongs inside character classes at - line 11.
|
|
Character class [:zog:] unknown at - line 12.
|
|
########
|
|
# regcomp.c [S_regclass]
|
|
$_ = "";
|
|
use warnings 'regexp' ;
|
|
/[a-b]/;
|
|
/[a-\d]/;
|
|
/[\d-b]/;
|
|
/[\s-\d]/;
|
|
/[\d-\s]/;
|
|
/[a-[:digit:]]/;
|
|
/[[:digit:]-b]/;
|
|
/[[:alpha:]-[:digit:]]/;
|
|
/[[:digit:]-[:alpha:]]/;
|
|
no warnings 'regexp' ;
|
|
/[a-b]/;
|
|
/[a-\d]/;
|
|
/[\d-b]/;
|
|
/[\s-\d]/;
|
|
/[\d-\s]/;
|
|
/[a-[:digit:]]/;
|
|
/[[:digit:]-b]/;
|
|
/[[:alpha:]-[:digit:]]/;
|
|
/[[:digit:]-[:alpha:]]/;
|
|
EXPECT
|
|
/[a-\d]/: false [] range "a-\d" in regexp at - line 5.
|
|
/[\d-b]/: false [] range "\d-" in regexp at - line 6.
|
|
/[\s-\d]/: false [] range "\s-" in regexp at - line 7.
|
|
/[\d-\s]/: false [] range "\d-" in regexp at - line 8.
|
|
/[a-[:digit:]]/: false [] range "a-[:digit:]" in regexp at - line 9.
|
|
/[[:digit:]-b]/: false [] range "[:digit:]-" in regexp at - line 10.
|
|
/[[:alpha:]-[:digit:]]/: false [] range "[:alpha:]-" in regexp at - line 11.
|
|
/[[:digit:]-[:alpha:]]/: false [] range "[:digit:]-" in regexp at - line 12.
|
|
########
|
|
# regcomp.c [S_regclassutf8]
|
|
BEGIN {
|
|
if (ord("\t") == 5) {
|
|
print "SKIPPED\n# ebcdic regular expression ranges differ.";
|
|
exit 0;
|
|
}
|
|
}
|
|
use utf8;
|
|
$_ = "";
|
|
use warnings 'regexp' ;
|
|
/[a-b]/;
|
|
/[a-\d]/;
|
|
/[\d-b]/;
|
|
/[\s-\d]/;
|
|
/[\d-\s]/;
|
|
/[a-[:digit:]]/;
|
|
/[[:digit:]-b]/;
|
|
/[[:alpha:]-[:digit:]]/;
|
|
/[[:digit:]-[:alpha:]]/;
|
|
no warnings 'regexp' ;
|
|
/[a-b]/;
|
|
/[a-\d]/;
|
|
/[\d-b]/;
|
|
/[\s-\d]/;
|
|
/[\d-\s]/;
|
|
/[a-[:digit:]]/;
|
|
/[[:digit:]-b]/;
|
|
/[[:alpha:]-[:digit:]]/;
|
|
/[[:digit:]-[:alpha:]]/;
|
|
EXPECT
|
|
/[a-\d]/: false [] range "a-\d" in regexp at - line 12.
|
|
/[\d-b]/: false [] range "\d-" in regexp at - line 13.
|
|
/[\s-\d]/: false [] range "\s-" in regexp at - line 14.
|
|
/[\d-\s]/: false [] range "\d-" in regexp at - line 15.
|
|
/[a-[:digit:]]/: false [] range "a-[:digit:]" in regexp at - line 16.
|
|
/[[:digit:]-b]/: false [] range "[:digit:]-" in regexp at - line 17.
|
|
/[[:alpha:]-[:digit:]]/: false [] range "[:alpha:]-" in regexp at - line 18.
|
|
/[[:digit:]-[:alpha:]]/: false [] range "[:digit:]-" in regexp at - line 19.
|
|
########
|
|
# regcomp.c [S_regclass S_regclassutf8]
|
|
use warnings 'regexp' ;
|
|
$a =~ /[a\zb]/ ;
|
|
no warnings 'regexp' ;
|
|
$a =~ /[a\zb]/ ;
|
|
EXPECT
|
|
/[a\zb]/: Unrecognized escape \z in character class passed through at - line 3.
|