libraries/spcre/libpcre/pcre/doc/perltest.txt
changeset 0 7f656887cf89
equal deleted inserted replaced
-1:000000000000 0:7f656887cf89
       
     1 The perltest program
       
     2 --------------------
       
     3 
       
     4 The perltest program tests Perl's regular expressions; it has the same
       
     5 specification as pcretest, and so can be given identical input, except that
       
     6 input patterns can be followed only by Perl's lower case modifiers and /+ (as
       
     7 used by pcretest), which is recognized and handled by the program.
       
     8 
       
     9 The data lines are processed as Perl double-quoted strings, so if they contain
       
    10 " $ or @ characters, these have to be escaped. For this reason, all such
       
    11 characters in testinput1 and testinput4 are escaped so that they can be used
       
    12 for perltest as well as for pcretest. The special upper case pattern
       
    13 modifiers such as /A that pcretest recognizes, and its special data line
       
    14 escapes, are not used in these files. The output should be identical, apart
       
    15 from the initial identifying banner.
       
    16 
       
    17 The perltest script can also test UTF-8 features. It works as is for Perl 5.8
       
    18 or higher. It recognizes the special modifier /8 that pcretest uses to invoke
       
    19 UTF-8 functionality. The testinput4 file can be fed to perltest to run
       
    20 compatible UTF-8 tests.
       
    21 
       
    22 For Perl 5.6, perltest won't work unmodified for the UTF-8 tests. You need to
       
    23 uncomment the "use utf8" lines that it contains. It is best to do this on a
       
    24 copy of the script, because for non-UTF-8 tests, these lines should remain
       
    25 commented out.
       
    26 
       
    27 The other testinput files are not suitable for feeding to perltest, since they
       
    28 make use of the special upper case modifiers and escapes that pcretest uses to
       
    29 test some features of PCRE. Some of these files also contains malformed regular
       
    30 expressions, in order to check that PCRE diagnoses them correctly.
       
    31 
       
    32 Philip Hazel
       
    33 September 2004