xref: /openbsd-src/gnu/usr.bin/perl/ext/re/t/regop.pl (revision f2da64fbbbf1b03f09f390ab01267c93dfd77c4c)
1use re Debug=>qw(DUMP EXECUTE OFFSETS TRIEC);
2my @tests=(
3  XY     =>  'X(A|[B]Q||C|D)Y' ,
4  foobar =>  '[f][o][o][b][a][r]',
5  x  =>  '.[XY].',
6  'ABCD' => '(?:ABCP|ABCG|ABCE|ABCB|ABCA|ABCD)',
7  'D:\\dev/perl/ver/28321_/perl.exe'=>
8  '/(\\.COM|\\.EXE|\\.BAT|\\.CMD|\\.VBS|\\.VBE|\\.JS|\\.JSE|\\.WSF|\\.WSH|\\.pyo|\\.pyc|\\.pyw|\\.py)$/i',
9  'q'=>'[q]',
10  "path_sep:\t8490" => '^(\\S{1,9}):\\s*(\\d+)$'
11);
12while (@tests) {
13    my ($str,$pat)=splice @tests,0,2;
14    warn "\n";
15    $pat="/$pat/" if substr($pat,0,1) ne '/';
16    # string eval to get the free regex message in the right place.
17    eval qq[
18        warn "$str"=~$pat ? "%MATCHED%" : "%FAILED%","\n";
19    ];
20    die $@ if $@;
21}
22