add pcre to in tree libs

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3732 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
Michael Jerris
2006-12-19 19:54:26 +00:00
parent f82b80b57c
commit 9da5d7e90f
166 changed files with 125793 additions and 0 deletions

609
libs/pcre/testdata/grepinput vendored Normal file
View File

@@ -0,0 +1,609 @@
This is a file of miscellaneous text that is used as test data for checking
that the pcregrep command is working correctly. The file must be more than 24K
long so that it needs more than a single read() call to process it. New
features should be added at the end, because some of the tests involve the
output of line numbers, and we don't want these to change.
PATTERN at the start of a line.
In the middle of a line, PATTERN appears.
This pattern is in lower case.
Here follows a whole lot of stuff that makes the file over 24K long.
-------------------------------------------------------------------------------
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog. The quick brown fox jumps over the
lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox
jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick
brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
-------------------------------------------------------------------------------
aaaaa0
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
bbbbbb
cccccccccccccccccccccccccccccccccccccccccc
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
eeeee
aaaaa2
ffffffffff
This is a line before the binary zero.
This line contains a binary zero here >< for testing.
This is a line after the binary zero.
ABOVE the elephant
ABOVE
ABOVE theatre
AB.VE
AB.VE the turtle
PUT NEW DATA ABOVE THIS LINE.
=============================
Check up on PATTERN near the end.
This is the last line of this file.

48
libs/pcre/testdata/grepinputx vendored Normal file
View File

@@ -0,0 +1,48 @@
This is a second file of input for the pcregrep tests.
Here is the pattern again.
Pattern
That time it was on a line by itself.
To pat or not to pat, that is the question.
complete pair
of lines
That was a complete pair
of lines all by themselves.
complete pair
of lines
And there they were again, to check line numbers.
one
two
three
four
five
six
seven
eight
nine
ten
eleven
twelve
thirteen
fourteen
fifteen
sixteen
seventeen
eighteen
nineteen
twenty
Here follows some CR/LF/CRLF test data.
abc
def
ghi
jkl

7
libs/pcre/testdata/greplist vendored Normal file
View File

@@ -0,0 +1,7 @@
This is a file of patterns for testing the -f option. Don't include any blank
lines because they will match everything! This is no longer true, so have one.
pattern
line by itself
End of the list of patterns.

417
libs/pcre/testdata/grepoutput vendored Normal file
View File

@@ -0,0 +1,417 @@
---------------------------- Test 1 ------------------------------
PATTERN at the start of a line.
In the middle of a line, PATTERN appears.
Check up on PATTERN near the end.
---------------------------- Test 2 ------------------------------
PATTERN at the start of a line.
---------------------------- Test 3 ------------------------------
7:PATTERN at the start of a line.
8:In the middle of a line, PATTERN appears.
10:This pattern is in lower case.
608:Check up on PATTERN near the end.
---------------------------- Test 4 ------------------------------
4
---------------------------- Test 5 ------------------------------
./testdata/grepinput:7:PATTERN at the start of a line.
./testdata/grepinput:8:In the middle of a line, PATTERN appears.
./testdata/grepinput:10:This pattern is in lower case.
./testdata/grepinput:608:Check up on PATTERN near the end.
./testdata/grepinputx:3:Here is the pattern again.
./testdata/grepinputx:5:Pattern
---------------------------- Test 6 ------------------------------
7:PATTERN at the start of a line.
8:In the middle of a line, PATTERN appears.
10:This pattern is in lower case.
608:Check up on PATTERN near the end.
3:Here is the pattern again.
5:Pattern
---------------------------- Test 7 ------------------------------
./testdata/grepinput
./testdata/grepinputx
---------------------------- Test 8 ------------------------------
./testdata/grepinput
---------------------------- Test 9 ------------------------------
RC=0
---------------------------- Test 10 -----------------------------
RC=1
---------------------------- Test 11 -----------------------------
1:This is a second file of input for the pcregrep tests.
2:
4:
5:Pattern
6:That time it was on a line by itself.
7:
8:To pat or not to pat, that is the question.
9:
10:complete pair
11:of lines
12:
13:That was a complete pair
14:of lines all by themselves.
15:
16:complete pair
17:of lines
18:
19:And there they were again, to check line numbers.
20:
21:one
22:two
23:three
24:four
25:five
26:six
27:seven
28:eight
29:nine
30:ten
31:eleven
32:twelve
33:thirteen
34:fourteen
35:fifteen
36:sixteen
37:seventeen
38:eighteen
39:nineteen
40:twenty
41:
42:Here follows some CR/LF/CRLF test data.
43:
44:abc
def
45:ghi
46:jkl
47:
48:This is the last line of this file.
---------------------------- Test 12 -----------------------------
Pattern
---------------------------- Test 13 -----------------------------
Here is the pattern again.
That time it was on a line by itself.
---------------------------- Test 14 -----------------------------
./testdata/grepinputx:To pat or not to pat, that is the question.
---------------------------- Test 15 -----------------------------
pcregrep: Error in command-line regex at offset 4: nothing to repeat
---------------------------- Test 16 -----------------------------
pcregrep: Failed to open ./testdata/nonexistfile: No such file or directory
---------------------------- Test 17 -----------------------------
features should be added at the end, because some of the tests involve the
output of line numbers, and we don't want these to change.
---------------------------- Test 18 -----------------------------
4:features should be added at the end, because some of the tests involve the
output of line numbers, and we don't want these to change.
583:brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog.
-------------------------------------------------------------------------------
---------------------------- Test 19 -----------------------------
Pattern
---------------------------- Test 20 -----------------------------
10:complete pair
of lines
16:complete pair
of lines
---------------------------- Test 21 -----------------------------
24:four
25-five
26-six
27-seven
--
34:fourteen
35-fifteen
36-sixteen
37-seventeen
---------------------------- Test 22 -----------------------------
21-one
22-two
23-three
24:four
--
31-eleven
32-twelve
33-thirteen
34:fourteen
---------------------------- Test 23 -----------------------------
one
two
three
four
five
six
seven
--
eleven
twelve
thirteen
fourteen
fifteen
sixteen
seventeen
---------------------------- Test 24 -----------------------------
four
five
six
seven
eight
nine
ten
eleven
twelve
thirteen
fourteen
fifteen
sixteen
seventeen
eighteen
nineteen
twenty
Here follows some CR/LF/CRLF test data.
---------------------------- Test 25 -----------------------------
15-
16-complete pair
17-of lines
18-
19-And there they were again, to check line numbers.
20-
21-one
22-two
23-three
24:four
25-five
26-six
27-seven
28-eight
29-nine
30-ten
31-eleven
32-twelve
33-thirteen
34:fourteen
---------------------------- Test 26 -----------------------------
complete pair
of lines
And there they were again, to check line numbers.
one
two
three
four
five
six
seven
eight
nine
ten
eleven
twelve
thirteen
fourteen
fifteen
sixteen
seventeen
eighteen
nineteen
twenty
Here follows some CR/LF/CRLF test data.
---------------------------- Test 27 -----------------------------
four
five
six
seven
eight
nine
ten
eleven
twelve
thirteen
fourteen
fifteen
sixteen
seventeen
eighteen
nineteen
twenty
Here follows some CR/LF/CRLF test data.
abc
def
---------------------------- Test 28 -----------------------------
14-of lines all by themselves.
15-
16-complete pair
17-of lines
18-
19-And there they were again, to check line numbers.
20-
21-one
22-two
23-three
24:four
25-five
26-six
27-seven
28-eight
29-nine
30-ten
31-eleven
32-twelve
33-thirteen
34:fourteen
---------------------------- Test 29 -----------------------------
of lines all by themselves.
complete pair
of lines
And there they were again, to check line numbers.
one
two
three
four
five
six
seven
eight
nine
ten
eleven
twelve
thirteen
fourteen
fifteen
sixteen
seventeen
eighteen
nineteen
twenty
Here follows some CR/LF/CRLF test data.
abc
def
ghi
jkl
---------------------------- Test 30 -----------------------------
./testdata/grepinput-4-features should be added at the end, because some of the tests involve the
./testdata/grepinput-5-output of line numbers, and we don't want these to change.
./testdata/grepinput-6-
./testdata/grepinput:7:PATTERN at the start of a line.
./testdata/grepinput:8:In the middle of a line, PATTERN appears.
./testdata/grepinput-9-
./testdata/grepinput:10:This pattern is in lower case.
--
./testdata/grepinput-605-PUT NEW DATA ABOVE THIS LINE.
./testdata/grepinput-606-=============================
./testdata/grepinput-607-
./testdata/grepinput:608:Check up on PATTERN near the end.
--
./testdata/grepinputx-1-This is a second file of input for the pcregrep tests.
./testdata/grepinputx-2-
./testdata/grepinputx:3:Here is the pattern again.
./testdata/grepinputx-4-
./testdata/grepinputx:5:Pattern
---------------------------- Test 31 -----------------------------
./testdata/grepinput:7:PATTERN at the start of a line.
./testdata/grepinput:8:In the middle of a line, PATTERN appears.
./testdata/grepinput-9-
./testdata/grepinput:10:This pattern is in lower case.
./testdata/grepinput-11-
./testdata/grepinput-12-Here follows a whole lot of stuff that makes the file over 24K long.
./testdata/grepinput-13-
--
./testdata/grepinput:608:Check up on PATTERN near the end.
./testdata/grepinput-609-This is the last line of this file.
--
./testdata/grepinputx:3:Here is the pattern again.
./testdata/grepinputx-4-
./testdata/grepinputx:5:Pattern
./testdata/grepinputx-6-That time it was on a line by itself.
./testdata/grepinputx-7-
./testdata/grepinputx-8-To pat or not to pat, that is the question.
---------------------------- Test 32 -----------------------------
./testdata/grepinputx
---------------------------- Test 33 -----------------------------
pcregrep: Failed to open ./testdata/grepnonexist: No such file or directory
RC=2
---------------------------- Test 34 -----------------------------
RC=2
---------------------------- Test 35 -----------------------------
./testdata/grepinputx
RC=0
---------------------------- Test 36 -----------------------------
./testdata/grepinputx
RC=0
---------------------------- Test 37 -----------------------------
aaaaa0
aaaaa2
RC=0
======== STDERR ========
pcregrep: pcre_exec() error -8 while matching this line:
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
pcregrep: error -8 means that a resource limit was exceeded
pcregrep: check your regex for nested unlimited loops
pcregrep: pcre_exec() error -8 while matching this line:
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
---------------------------- Test 38 ------------------------------
This line contains a binary zero here >< for testing.
---------------------------- Test 39 ------------------------------
This is a line before the binary zero.
This line contains a binary zero here >< for testing.
---------------------------- Test 40 ------------------------------
This line contains a binary zero here >< for testing.
This is a line after the binary zero.
---------------------------- Test 41 ------------------------------
before the binary zero
after the binary zero
---------------------------- Test 41 ------------------------------
./testdata/grepinput:595:before the binary zero
./testdata/grepinput:597:after the binary zero
---------------------------- Test 42 ------------------------------
595:before
596:zero
597:after
---------------------------- Test 43 ------------------------------
595:before
596:zero
597:zero
---------------------------- Test 44 ------------------------------
10:pattern
595:binary
596:binary
597:binary
---------------------------- Test 45 ------------------------------
pcregrep: Error in 2nd command-line regex at offset 9: missing )
---------------------------- Test 46 ------------------------------
AB.VE
---------------------------- Test 47 ------------------------------
ABOVE the elephant
AB.VE
AB.VE the turtle
---------------------------- Test 48 ------------------------------
ABOVE the elephant
AB.VE
AB.VE the turtle
PUT NEW DATA ABOVE THIS LINE.
---------------------------- Test 49 ------------------------------
abc
def
ghi
jkl
---------------------------- Test 50 ------------------------------
def
---------------------------- Test 51 ------------------------------
abc
def
ghi
jkl
---------------------------- Test 52 ------------------------------
def
ghi
jkl

3886
libs/pcre/testdata/testinput1 vendored Normal file

File diff suppressed because it is too large Load Diff

1646
libs/pcre/testdata/testinput2 vendored Normal file

File diff suppressed because it is too large Load Diff

91
libs/pcre/testdata/testinput3 vendored Normal file
View File

@@ -0,0 +1,91 @@
/^[\w]+/
*** Failers
<20>cole
/^[\w]+/Lfr_FR
<20>cole
/^[\w]+/
*** Failers
<20>cole
/^[\W]+/
<20>cole
/^[\W]+/Lfr_FR
*** Failers
<20>cole
/[\b]/
\b
*** Failers
a
/[\b]/Lfr_FR
\b
*** Failers
a
/^\w+/
*** Failers
<20>cole
/^\w+/Lfr_FR
<20>cole
/(.+)\b(.+)/
<20>cole
/(.+)\b(.+)/Lfr_FR
*** Failers
<20>cole
/<2F>cole/i
<20>cole
*** Failers
<20>cole
/<2F>cole/iLfr_FR
<20>cole
<20>cole
/\w/IS
/\w/ISLfr_FR
/^[\xc8-\xc9]/iLfr_FR
<20>cole
<20>cole
/^[\xc8-\xc9]/Lfr_FR
<20>cole
*** Failers
<20>cole
/\W+/Lfr_FR
>>>\xaa<<<
>>>\xba<<<
/[\W]+/Lfr_FR
>>>\xaa<<<
>>>\xba<<<
/[^[:alpha:]]+/Lfr_FR
>>>\xaa<<<
>>>\xba<<<
/\w+/Lfr_FR
>>>\xaa<<<
>>>\xba<<<
/[\w]+/Lfr_FR
>>>\xaa<<<
>>>\xba<<<
/[[:alpha:]]+/Lfr_FR
>>>\xaa<<<
>>>\xba<<<
/[[:alpha:]][[:lower:]][[:upper:]]/DLfr_FR
/ End of testinput3 /

523
libs/pcre/testdata/testinput4 vendored Normal file
View File

@@ -0,0 +1,523 @@
/-- Do not use the \x{} construct except with patterns that have the --/
/-- /8 option set, because PCRE doesn't recognize them as UTF-8 unless --/
/-- that option is set. However, the latest Perls recognize them always. --/
/a.b/8
acb
a\x7fb
a\x{100}b
*** Failers
a\nb
/a(.{3})b/8
a\x{4000}xyb
a\x{4000}\x7fyb
a\x{4000}\x{100}yb
*** Failers
a\x{4000}b
ac\ncb
/a(.*?)(.)/
a\xc0\x88b
/a(.*?)(.)/8
a\x{100}b
/a(.*)(.)/
a\xc0\x88b
/a(.*)(.)/8
a\x{100}b
/a(.)(.)/
a\xc0\x92bcd
/a(.)(.)/8
a\x{240}bcd
/a(.?)(.)/
a\xc0\x92bcd
/a(.?)(.)/8
a\x{240}bcd
/a(.??)(.)/
a\xc0\x92bcd
/a(.??)(.)/8
a\x{240}bcd
/a(.{3})b/8
a\x{1234}xyb
a\x{1234}\x{4321}yb
a\x{1234}\x{4321}\x{3412}b
*** Failers
a\x{1234}b
ac\ncb
/a(.{3,})b/8
a\x{1234}xyb
a\x{1234}\x{4321}yb
a\x{1234}\x{4321}\x{3412}b
axxxxbcdefghijb
a\x{1234}\x{4321}\x{3412}\x{3421}b
*** Failers
a\x{1234}b
/a(.{3,}?)b/8
a\x{1234}xyb
a\x{1234}\x{4321}yb
a\x{1234}\x{4321}\x{3412}b
axxxxbcdefghijb
a\x{1234}\x{4321}\x{3412}\x{3421}b
*** Failers
a\x{1234}b
/a(.{3,5})b/8
a\x{1234}xyb
a\x{1234}\x{4321}yb
a\x{1234}\x{4321}\x{3412}b
axxxxbcdefghijb
a\x{1234}\x{4321}\x{3412}\x{3421}b
axbxxbcdefghijb
axxxxxbcdefghijb
*** Failers
a\x{1234}b
axxxxxxbcdefghijb
/a(.{3,5}?)b/8
a\x{1234}xyb
a\x{1234}\x{4321}yb
a\x{1234}\x{4321}\x{3412}b
axxxxbcdefghijb
a\x{1234}\x{4321}\x{3412}\x{3421}b
axbxxbcdefghijb
axxxxxbcdefghijb
*** Failers
a\x{1234}b
axxxxxxbcdefghijb
/^[a\x{c0}]/8
*** Failers
\x{100}
/(?<=aXb)cd/8
aXbcd
/(?<=a\x{100}b)cd/8
a\x{100}bcd
/(?<=a\x{100000}b)cd/8
a\x{100000}bcd
/(?:\x{100}){3}b/8
\x{100}\x{100}\x{100}b
*** Failers
\x{100}\x{100}b
/\x{ab}/8
\x{ab}
\xc2\xab
*** Failers
\x00{ab}
/(?<=(.))X/8
WXYZ
\x{256}XYZ
*** Failers
XYZ
/X(\C{3})/8
X\x{1234}
/X(\C{4})/8
X\x{1234}YZ
/X\C*/8
XYZabcdce
/X\C*?/8
XYZabcde
/X\C{3,5}/8
Xabcdefg
X\x{1234}
X\x{1234}YZ
X\x{1234}\x{512}
X\x{1234}\x{512}YZ
/X\C{3,5}?/8
Xabcdefg
X\x{1234}
X\x{1234}YZ
X\x{1234}\x{512}
/[^a]+/8g
bcd
\x{100}aY\x{256}Z
/^[^a]{2}/8
\x{100}bc
/^[^a]{2,}/8
\x{100}bcAa
/^[^a]{2,}?/8
\x{100}bca
/[^a]+/8ig
bcd
\x{100}aY\x{256}Z
/^[^a]{2}/8i
\x{100}bc
/^[^a]{2,}/8i
\x{100}bcAa
/^[^a]{2,}?/8i
\x{100}bca
/\x{100}{0,0}/8
abcd
/\x{100}?/8
abcd
\x{100}\x{100}
/\x{100}{0,3}/8
\x{100}\x{100}
\x{100}\x{100}\x{100}\x{100}
/\x{100}*/8
abce
\x{100}\x{100}\x{100}\x{100}
/\x{100}{1,1}/8
abcd\x{100}\x{100}\x{100}\x{100}
/\x{100}{1,3}/8
abcd\x{100}\x{100}\x{100}\x{100}
/\x{100}+/8
abcd\x{100}\x{100}\x{100}\x{100}
/\x{100}{3}/8
abcd\x{100}\x{100}\x{100}XX
/\x{100}{3,5}/8
abcd\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}XX
/\x{100}{3,}/8
abcd\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}XX
/(?<=a\x{100}{2}b)X/8+
Xyyya\x{100}\x{100}bXzzz
/\D*/8
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
/\D*/8
\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}
/\D/8
1X2
1\x{100}2
/>\S/8
> >X Y
> >\x{100} Y
/\d/8
\x{100}3
/\s/8
\x{100} X
/\D+/8
12abcd34
*** Failers
1234
/\D{2,3}/8
12abcd34
12ab34
*** Failers
1234
12a34
/\D{2,3}?/8
12abcd34
12ab34
*** Failers
1234
12a34
/\d+/8
12abcd34
*** Failers
/\d{2,3}/8
12abcd34
1234abcd
*** Failers
1.4
/\d{2,3}?/8
12abcd34
1234abcd
*** Failers
1.4
/\S+/8
12abcd34
*** Failers
\ \
/\S{2,3}/8
12abcd34
1234abcd
*** Failers
\ \
/\S{2,3}?/8
12abcd34
1234abcd
*** Failers
\ \
/>\s+</8+
12> <34
*** Failers
/>\s{2,3}</8+
ab> <cd
ab> <ce
*** Failers
ab> <cd
/>\s{2,3}?</8+
ab> <cd
ab> <ce
*** Failers
ab> <cd
/\w+/8
12 34
*** Failers
+++=*!
/\w{2,3}/8
ab cd
abcd ce
*** Failers
a.b.c
/\w{2,3}?/8
ab cd
abcd ce
*** Failers
a.b.c
/\W+/8
12====34
*** Failers
abcd
/\W{2,3}/8
ab====cd
ab==cd
*** Failers
a.b.c
/\W{2,3}?/8
ab====cd
ab==cd
*** Failers
a.b.c
/[\x{100}]/8
\x{100}
Z\x{100}
\x{100}Z
*** Failers
/[Z\x{100}]/8
Z\x{100}
\x{100}
\x{100}Z
*** Failers
/[\x{100}\x{200}]/8
ab\x{100}cd
ab\x{200}cd
*** Failers
/[\x{100}-\x{200}]/8
ab\x{100}cd
ab\x{200}cd
ab\x{111}cd
*** Failers
/[z-\x{200}]/8
ab\x{100}cd
ab\x{200}cd
ab\x{111}cd
abzcd
ab|cd
*** Failers
/[Q\x{100}\x{200}]/8
ab\x{100}cd
ab\x{200}cd
Q?
*** Failers
/[Q\x{100}-\x{200}]/8
ab\x{100}cd
ab\x{200}cd
ab\x{111}cd
Q?
*** Failers
/[Qz-\x{200}]/8
ab\x{100}cd
ab\x{200}cd
ab\x{111}cd
abzcd
ab|cd
Q?
*** Failers
/[\x{100}\x{200}]{1,3}/8
ab\x{100}cd
ab\x{200}cd
ab\x{200}\x{100}\x{200}\x{100}cd
*** Failers
/[\x{100}\x{200}]{1,3}?/8
ab\x{100}cd
ab\x{200}cd
ab\x{200}\x{100}\x{200}\x{100}cd
*** Failers
/[Q\x{100}\x{200}]{1,3}/8
ab\x{100}cd
ab\x{200}cd
ab\x{200}\x{100}\x{200}\x{100}cd
*** Failers
/[Q\x{100}\x{200}]{1,3}?/8
ab\x{100}cd
ab\x{200}cd
ab\x{200}\x{100}\x{200}\x{100}cd
*** Failers
/(?<=[\x{100}\x{200}])X/8
abc\x{200}X
abc\x{100}X
*** Failers
X
/(?<=[Q\x{100}\x{200}])X/8
abc\x{200}X
abc\x{100}X
abQX
*** Failers
X
/(?<=[\x{100}\x{200}]{3})X/8
abc\x{100}\x{200}\x{100}X
*** Failers
abc\x{200}X
X
/[^\x{100}\x{200}]X/8
AX
\x{150}X
\x{500}X
*** Failers
\x{100}X
\x{200}X
/[^Q\x{100}\x{200}]X/8
AX
\x{150}X
\x{500}X
*** Failers
\x{100}X
\x{200}X
QX
/[^\x{100}-\x{200}]X/8
AX
\x{500}X
*** Failers
\x{100}X
\x{150}X
\x{200}X
/a\Cb/
aXb
a\nb
/a\Cb/8
aXb
a\nb
*** Failers
a\x{100}b
/[z-\x{100}]/8i
z
Z
\x{100}
*** Failers
\x{102}
y
/[\xFF]/
>\xff<
/[\xff]/8
>\x{ff}<
/[^\xFF]/
XYZ
/[^\xff]/8
XYZ
\x{123}
/^[ac]*b/8
xb
/^[ac\x{100}]*b/8
xb
/^[^x]*b/8i
xb
/^[^x]*b/8
xb
/^\d*b/8
xb
/(|a)/g8
catac
a\x{256}a
/^\x{85}$/8i
\x{85}
/^ሴ/8
/^\ሴ/8
"(?s)(.{1,5})"8
abcdefg
ab
/ End of testinput4 /

274
libs/pcre/testdata/testinput5 vendored Normal file
View File

@@ -0,0 +1,274 @@
/\x{100}/8DM
/\x{1000}/8DM
/\x{10000}/8DM
/\x{100000}/8DM
/\x{1000000}/8DM
/\x{4000000}/8DM
/\x{7fffFFFF}/8DM
/[\x{ff}]/8DM
/[\x{100}]/8DM
/\x{ffffffff}/8
/\x{100000000}/8
/^\x{100}a\x{1234}/8
\x{100}a\x{1234}bcd
/\x80/8D
/\xff/8D
/\x{0041}\x{2262}\x{0391}\x{002e}/D8
\x{0041}\x{2262}\x{0391}\x{002e}
/\x{D55c}\x{ad6d}\x{C5B4}/D8
\x{D55c}\x{ad6d}\x{C5B4}
/\x{65e5}\x{672c}\x{8a9e}/D8
\x{65e5}\x{672c}\x{8a9e}
/\x{80}/D8
/\x{084}/D8
/\x{104}/D8
/\x{861}/D8
/\x{212ab}/D8
/.{3,5}X/D8
\x{212ab}\x{212ab}\x{212ab}\x{861}X
/.{3,5}?/D8
\x{212ab}\x{212ab}\x{212ab}\x{861}
/-- These tests are here rather than in testinput4 because Perl 5.6 has --/
/-- some problems with UTF-8 support, in the area of \x{..} where the --/
/-- value is < 255. It grumbles about invalid UTF-8 strings. --/
/^[a\x{c0}]b/8
\x{c0}b
/^([a\x{c0}]*?)aa/8
a\x{c0}aaaa/
/^([a\x{c0}]*?)aa/8
a\x{c0}aaaa/
a\x{c0}a\x{c0}aaa/
/^([a\x{c0}]*)aa/8
a\x{c0}aaaa/
a\x{c0}a\x{c0}aaa/
/^([a\x{c0}]*)a\x{c0}/8
a\x{c0}aaaa/
a\x{c0}a\x{c0}aaa/
/-- --/
/(?<=\C)X/8
Should produce an error diagnostic
/-- This one is here not because it's different to Perl, but because the --/
/-- way the captured single-byte is displayed. (In Perl it becomes a --/
/-- character, and you can't tell the difference.) --/
/X(\C)(.*)/8
X\x{1234}
X\nabc
/^[ab]/8D
bar
*** Failers
c
\x{ff}
\x{100}
/^[^ab]/8D
c
\x{ff}
\x{100}
*** Failers
aaa
/[^ab\xC0-\xF0]/8SD
\x{f1}
\x{bf}
\x{100}
\x{1000}
*** Failers
\x{c0}
\x{f0}
/Ā{3,4}/8SD
\x{100}\x{100}\x{100}\x{100\x{100}
/(\x{100}+|x)/8SD
/(\x{100}*a|x)/8SD
/(\x{100}{0,2}a|x)/8SD
/(\x{100}{1,2}a|x)/8SD
/\x{100}*(\d+|"(?1)")/8
1234
"1234"
\x{100}1234
"\x{100}1234"
\x{100}\x{100}12ab
\x{100}\x{100}"12"
*** Failers
\x{100}\x{100}abcd
/\x{100}/8D
/\x{100}*/8D
/a\x{100}*/8D
/ab\x{100}*/8D
/a\x{100}\x{101}*/8D
/a\x{100}\x{101}+/8D
/\x{100}*A/8D
A
/\x{100}*\d(?R)/8D
/[^\x{c4}]/D
/[^\x{c4}]/8D
/[\x{100}]/8DM
\x{100}
Z\x{100}
\x{100}Z
*** Failers
/[Z\x{100}]/8DM
Z\x{100}
\x{100}
\x{100}Z
*** Failers
/[\x{200}-\x{100}]/8
/[Ā-Ą]/8
\x{100}
\x{104}
*** Failers
\x{105}
\x{ff}
/[z-\x{100}]/8D
/[z\Qa-d]Ā\E]/8D
\x{100}
Ā
/[\xFF]/D
>\xff<
/[\xff]/D8
>\x{ff}<
/[^\xFF]/D
/[^\xff]/8D
/[Ä-Ü]/8
Ö # Matches without Study
\x{d6}
/[Ä-Ü]/8S
Ö <-- Same with Study
\x{d6}
/[\x{c4}-\x{dc}]/8
Ö # Matches without Study
\x{d6}
/[\x{c4}-\x{dc}]/8S
Ö <-- Same with Study
\x{d6}
/[<5B>]/8
/<2F>/8
/<2F><><EFBFBD>xxx/8
/<2F><><EFBFBD>xxx/8?D
/abc/8
<20>]
<20>
<20><><EFBFBD>
<20><><EFBFBD>\?
/anything/8
\xc0\x80
\xc1\x8f
\xe0\x9f\x80
\xf0\x8f\x80\x80
\xf8\x87\x80\x80\x80
\xfc\x83\x80\x80\x80\x80
\xfe\x80\x80\x80\x80\x80
\xff\x80\x80\x80\x80\x80
\xc3\x8f
\xe0\xaf\x80
\xe1\x80\x80
\xf0\x9f\x80\x80
\xf1\x8f\x80\x80
\xf8\x88\x80\x80\x80
\xf9\x87\x80\x80\x80
\xfc\x84\x80\x80\x80\x80
\xfd\x83\x80\x80\x80\x80
/\x{100}abc(xyz(?1))/8D
/[^\x{100}]abc(xyz(?1))/8D
/[ab\x{100}]abc(xyz(?1))/8D
/(\x{100}(b(?2)c))?/D8
/(\x{100}(b(?2)c)){0,2}/D8
/(\x{100}(b(?1)c))?/D8
/(\x{100}(b(?1)c)){0,2}/D8
/\W/8
A.B
A\x{100}B
/\w/8
\x{100}X
/a\x{1234}b/P8
a\x{1234}b
/^\ሴ/8D
/\777/I
/\777/8I
\x{1ff}
\777
/ End of testinput5 /

750
libs/pcre/testdata/testinput6 vendored Normal file
View File

@@ -0,0 +1,750 @@
/^\pC\pL\pM\pN\pP\pS\pZ</8
\x7f\x{c0}\x{30f}\x{660}\x{66c}\x{f01}\x{1680}<
\np\x{300}9!\$ <
** Failers
ap\x{300}9!\$ <
/^\PC/8
X
** Failers
\x7f
/^\PL/8
9
** Failers
\x{c0}
/^\PM/8
X
** Failers
\x{30f}
/^\PN/8
X
** Failers
\x{660}
/^\PP/8
X
** Failers
\x{66c}
/^\PS/8
X
** Failers
\x{f01}
/^\PZ/8
X
** Failers
\x{1680}
/^\p{Cc}/8
\x{017}
\x{09f}
** Failers
\x{0600}
/^\p{Cf}/8
\x{601}
** Failers
\x{09f}
/^\p{Cn}/8
\x{e0000}
** Failers
\x{09f}
/^\p{Co}/8
\x{f8ff}
** Failers
\x{09f}
/^\p{Cs}/8
\x{dfff}
** Failers
\x{09f}
/^\p{Ll}/8
a
** Failers
Z
\x{dfff}
/^\p{Lm}/8
\x{2b0}
** Failers
a
/^\p{Lo}/8
\x{1bb}
\x{3400}
\x{3401}
\x{4d00}
\x{4db4}
\x{4db5}
** Failers
a
\x{2b0}
\x{4db6}
/^\p{Lt}/8
\x{1c5}
** Failers
a
\x{2b0}
/^\p{Lu}/8
A
** Failers
\x{2b0}
/^\p{Mc}/8
\x{903}
** Failers
X
\x{300}
/^\p{Me}/8
\x{488}
** Failers
X
\x{903}
\x{300}
/^\p{Mn}/8
\x{300}
** Failers
X
\x{903}
/^\p{Nd}+/8
0123456789\x{660}\x{661}\x{662}\x{663}\x{664}\x{665}\x{666}\x{667}\x{668}\x{669}\x{66a}
\x{6f0}\x{6f1}\x{6f2}\x{6f3}\x{6f4}\x{6f5}\x{6f6}\x{6f7}\x{6f8}\x{6f9}\x{6fa}
\x{966}\x{967}\x{968}\x{969}\x{96a}\x{96b}\x{96c}\x{96d}\x{96e}\x{96f}\x{970}
** Failers
X
/^\p{Nl}/8
\x{16ee}
** Failers
X
\x{966}
/^\p{No}/8
\x{b2}
\x{b3}
** Failers
X
\x{16ee}
/^\p{Pc}/8
\x5f
\x{203f}
** Failers
X
-
\x{58a}
/^\p{Pd}/8
-
\x{58a}
** Failers
X
\x{203f}
/^\p{Pe}/8
)
]
}
\x{f3b}
** Failers
X
\x{203f}
(
[
{
\x{f3c}
/^\p{Pf}/8
\x{bb}
\x{2019}
** Failers
X
\x{203f}
/^\p{Pi}/8
\x{ab}
\x{2018}
** Failers
X
\x{203f}
/^\p{Po}/8
!
\x{37e}
** Failers
X
\x{203f}
/^\p{Ps}/8
(
[
{
\x{f3c}
** Failers
X
)
]
}
\x{f3b}
/^\p{Sc}+/8
$\x{a2}\x{a3}\x{a4}\x{a5}\x{a6}
\x{9f2}
** Failers
X
\x{2c2}
/^\p{Sk}/8
\x{2c2}
** Failers
X
\x{9f2}
/^\p{Sm}+/8
+<|~\x{ac}\x{2044}
** Failers
X
\x{9f2}
/^\p{So}/8
\x{a6}
\x{482}
** Failers
X
\x{9f2}
/^\p{Zl}/8
\x{2028}
** Failers
X
\x{2029}
/^\p{Zp}/8
\x{2029}
** Failers
X
\x{2028}
/^\p{Zs}/8
\ \
\x{a0}
\x{1680}
\x{180e}
\x{2000}
\x{2001}
** Failers
\x{2028}
\x{200d}
/\p{Nd}+(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}+?(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}{2,}(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}{2,}?(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}*(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}*?(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}{2}(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}{2,3}(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}{2,3}?(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}?(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}??(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}*+(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}*+(...)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}*+(....)/8
** Failers
\x{660}\x{661}\x{662}ABC
/\p{Lu}/8i
A
a\x{10a0}B
** Failers
a
\x{1d00}
/\p{^Lu}/8i
1234
** Failers
ABC
/\P{Lu}/8i
1234
** Failers
ABC
/(?<=A\p{Nd})XYZ/8
A2XYZ
123A5XYZPQR
ABA\x{660}XYZpqr
** Failers
AXYZ
XYZ
/(?<!\pL)XYZ/8
1XYZ
AB=XYZ..
XYZ
** Failers
WXYZ
/[\p{L}]/D
/[\p{^L}]/D
/[\P{L}]/D
/[\P{^L}]/D
/[abc\p{L}\x{0660}]/8D
/[\p{Nd}]/8DM
1234
/[\p{Nd}+-]+/8DM
1234
12-34
12+\x{661}-34
** Failers
abcd
/[\P{Nd}]+/8
abcd
** Failers
1234
/\D+/8
11111111111111111111111111111111111111111111111111111111111111111111111
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
/\P{Nd}+/8
11111111111111111111111111111111111111111111111111111111111111111111111
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
/[\D]+/8
11111111111111111111111111111111111111111111111111111111111111111111111
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
/[\P{Nd}]+/8
11111111111111111111111111111111111111111111111111111111111111111111111
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
/[\D\P{Nd}]+/8
11111111111111111111111111111111111111111111111111111111111111111111111
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
/\pL/8
a
A
/\pL/8i
a
A
/\p{Lu}/8
A
aZ
** Failers
abc
/\p{Lu}/8i
A
aZ
** Failers
abc
/\p{Ll}/8
a
Az
** Failers
ABC
/\p{Ll}/8i
a
Az
** Failers
ABC
/^\x{c0}$/8i
\x{c0}
\x{e0}
/^\x{e0}$/8i
\x{c0}
\x{e0}
/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8
A\x{391}\x{10427}\x{ff3a}\x{1fb0}
** Failers
a\x{391}\x{10427}\x{ff3a}\x{1fb0}
A\x{3b1}\x{10427}\x{ff3a}\x{1fb0}
A\x{391}\x{1044F}\x{ff3a}\x{1fb0}
A\x{391}\x{10427}\x{ff5a}\x{1fb0}
A\x{391}\x{10427}\x{ff3a}\x{1fb8}
/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8i
A\x{391}\x{10427}\x{ff3a}\x{1fb0}
a\x{391}\x{10427}\x{ff3a}\x{1fb0}
A\x{3b1}\x{10427}\x{ff3a}\x{1fb0}
A\x{391}\x{1044F}\x{ff3a}\x{1fb0}
A\x{391}\x{10427}\x{ff5a}\x{1fb0}
A\x{391}\x{10427}\x{ff3a}\x{1fb8}
/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8iD
/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8D
/AB\x{1fb0}/8D
/AB\x{1fb0}/8Di
/\x{391}+/8i
\x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}
/\x{391}{3,5}(.)/8i
\x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}X
/\x{391}{3,5}?(.)/8i
\x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}X
/[\x{391}\x{ff3a}]/8i
\x{391}
\x{ff3a}
\x{3b1}
\x{ff5a}
/[\x{c0}\x{391}]/8i
\x{c0}
\x{e0}
/[\x{105}-\x{109}]/8iD
\x{104}
\x{105}
\x{109}
** Failers
\x{100}
\x{10a}
/[z-\x{100}]/8iD
Z
z
\x{39c}
\x{178}
|
\x{80}
\x{ff}
\x{100}
\x{101}
** Failers
\x{102}
Y
y
/[z-\x{100}]/8Di
/^\X/8
A
A\x{300}BC
A\x{300}\x{301}\x{302}BC
*** Failers
\x{300}
/^[\X]/8
X123
*** Failers
AXYZ
/^(\X*)C/8
A\x{300}\x{301}\x{302}BCA\x{300}\x{301}
A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C
/^(\X*?)C/8
A\x{300}\x{301}\x{302}BCA\x{300}\x{301}
A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C
/^(\X*)(.)/8
A\x{300}\x{301}\x{302}BCA\x{300}\x{301}
A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C
/^(\X*?)(.)/8
A\x{300}\x{301}\x{302}BCA\x{300}\x{301}
A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C
/^\X(.)/8
*** Failers
A\x{300}\x{301}\x{302}
/^\X{2,3}(.)/8
A\x{300}\x{301}B\x{300}X
A\x{300}\x{301}B\x{300}C\x{300}\x{301}
A\x{300}\x{301}B\x{300}C\x{300}\x{301}X
A\x{300}\x{301}B\x{300}C\x{300}\x{301}DA\x{300}X
/^\X{2,3}?(.)/8
A\x{300}\x{301}B\x{300}X
A\x{300}\x{301}B\x{300}C\x{300}\x{301}
A\x{300}\x{301}B\x{300}C\x{300}\x{301}X
A\x{300}\x{301}B\x{300}C\x{300}\x{301}DA\x{300}X
/^\p{Han}+/8
\x{2e81}\x{3007}\x{2f804}\x{31a0}
** Failers
\x{2e7f}
/^\P{Katakana}+/8
\x{3105}
** Failers
\x{30ff}
/^[\p{Arabic}]/8
\x{06e9}
\x{060b}
** Failers
X\x{06e9}
/^[\P{Yi}]/8
\x{2f800}
** Failers
\x{a014}
\x{a4c6}
/^\p{Any}X/8
AXYZ
\x{1234}XYZ
** Failers
X
/^\P{Any}X/8
** Failers
AX
/^\p{Any}?X/8
XYZ
AXYZ
\x{1234}XYZ
** Failers
ABXYZ
/^\P{Any}?X/8
XYZ
** Failers
AXYZ
\x{1234}XYZ
ABXYZ
/^\p{Any}+X/8
AXYZ
\x{1234}XYZ
A\x{1234}XYZ
** Failers
XYZ
/^\P{Any}+X/8
** Failers
AXYZ
\x{1234}XYZ
A\x{1234}XYZ
XYZ
/^\p{Any}*X/8
XYZ
AXYZ
\x{1234}XYZ
A\x{1234}XYZ
** Failers
/^\P{Any}*X/8
XYZ
** Failers
AXYZ
\x{1234}XYZ
A\x{1234}XYZ
/^[\p{Any}]X/8
AXYZ
\x{1234}XYZ
** Failers
X
/^[\P{Any}]X/8
** Failers
AX
/^[\p{Any}]?X/8
XYZ
AXYZ
\x{1234}XYZ
** Failers
ABXYZ
/^[\P{Any}]?X/8
XYZ
** Failers
AXYZ
\x{1234}XYZ
ABXYZ
/^[\p{Any}]+X/8
AXYZ
\x{1234}XYZ
A\x{1234}XYZ
** Failers
XYZ
/^[\P{Any}]+X/8
** Failers
AXYZ
\x{1234}XYZ
A\x{1234}XYZ
XYZ
/^[\p{Any}]*X/8
XYZ
AXYZ
\x{1234}XYZ
A\x{1234}XYZ
** Failers
/^[\P{Any}]*X/8
XYZ
** Failers
AXYZ
\x{1234}XYZ
A\x{1234}XYZ
/^\p{Any}{3,5}?/8
abcdefgh
\x{1234}\n\r\x{3456}xyz
/^\p{Any}{3,5}/8
abcdefgh
\x{1234}\n\r\x{3456}xyz
/^\P{Any}{3,5}?/8
** Failers
abcdefgh
\x{1234}\n\r\x{3456}xyz
/^\p{L&}X/8
AXY
aXY
\x{1c5}XY
** Failers
\x{1bb}XY
\x{2b0}XY
!XY
/^[\p{L&}]X/8
AXY
aXY
\x{1c5}XY
** Failers
\x{1bb}XY
\x{2b0}XY
!XY
/^\p{L&}+X/8
AXY
aXY
AbcdeXyz
\x{1c5}AbXY
abcDEXypqreXlmn
** Failers
\x{1bb}XY
\x{2b0}XY
!XY
/^[\p{L&}]+X/8
AXY
aXY
AbcdeXyz
\x{1c5}AbXY
abcDEXypqreXlmn
** Failers
\x{1bb}XY
\x{2b0}XY
!XY
/^\p{L&}+?X/8
AXY
aXY
AbcdeXyz
\x{1c5}AbXY
abcDEXypqreXlmn
** Failers
\x{1bb}XY
\x{2b0}XY
!XY
/^[\p{L&}]+?X/8
AXY
aXY
AbcdeXyz
\x{1c5}AbXY
abcDEXypqreXlmn
** Failers
\x{1bb}XY
\x{2b0}XY
!XY
/^\P{L&}X/8
!XY
\x{1bb}XY
\x{2b0}XY
** Failers
\x{1c5}XY
AXY
/^[\P{L&}]X/8
!XY
\x{1bb}XY
\x{2b0}XY
** Failers
\x{1c5}XY
AXY
/^(\p{Z}[^\p{C}\p{Z}]+)*$/
\xa0!
/^[\pL](abc)(?1)/
AabcabcYZ
/([\pL]=(abc))*X/
L=abcX
/ End of testinput6 /

4117
libs/pcre/testdata/testinput7 vendored Normal file

File diff suppressed because it is too large Load Diff

540
libs/pcre/testdata/testinput8 vendored Normal file
View File

@@ -0,0 +1,540 @@
/-- Do not use the \x{} construct except with patterns that have the --/
/-- /8 option set, because PCRE doesn't recognize them as UTF-8 unless --/
/-- that option is set. However, the latest Perls recognize them always. --/
/\x{100}ab/8
\x{100}ab
/a\x{100}*b/8
ab
a\x{100}b
a\x{100}\x{100}b
/a\x{100}+b/8
a\x{100}b
a\x{100}\x{100}b
*** Failers
ab
/\bX/8
Xoanon
+Xoanon
\x{300}Xoanon
*** Failers
YXoanon
/\BX/8
YXoanon
*** Failers
Xoanon
+Xoanon
\x{300}Xoanon
/X\b/8
X+oanon
ZX\x{300}oanon
FAX
*** Failers
Xoanon
/X\B/8
Xoanon
*** Failers
X+oanon
ZX\x{300}oanon
FAX
/[^a]/8
abcd
a\x{100}
/^[abc\x{123}\x{400}-\x{402}]{2,3}\d/8
ab99
\x{123}\x{123}45
\x{400}\x{401}\x{402}6
*** Failers
d99
\x{123}\x{122}4
\x{400}\x{403}6
\x{400}\x{401}\x{402}\x{402}6
/abc/8
<20>]
<20>
<20><><EFBFBD>
<20><><EFBFBD>\?
/a.b/8
acb
a\x7fb
a\x{100}b
*** Failers
a\nb
/a(.{3})b/8
a\x{4000}xyb
a\x{4000}\x7fyb
a\x{4000}\x{100}yb
*** Failers
a\x{4000}b
ac\ncb
/a(.*?)(.)/
a\xc0\x88b
/a(.*?)(.)/8
a\x{100}b
/a(.*)(.)/
a\xc0\x88b
/a(.*)(.)/8
a\x{100}b
/a(.)(.)/
a\xc0\x92bcd
/a(.)(.)/8
a\x{240}bcd
/a(.?)(.)/
a\xc0\x92bcd
/a(.?)(.)/8
a\x{240}bcd
/a(.??)(.)/
a\xc0\x92bcd
/a(.??)(.)/8
a\x{240}bcd
/a(.{3})b/8
a\x{1234}xyb
a\x{1234}\x{4321}yb
a\x{1234}\x{4321}\x{3412}b
*** Failers
a\x{1234}b
ac\ncb
/a(.{3,})b/8
a\x{1234}xyb
a\x{1234}\x{4321}yb
a\x{1234}\x{4321}\x{3412}b
axxxxbcdefghijb
a\x{1234}\x{4321}\x{3412}\x{3421}b
*** Failers
a\x{1234}b
/a(.{3,}?)b/8
a\x{1234}xyb
a\x{1234}\x{4321}yb
a\x{1234}\x{4321}\x{3412}b
axxxxbcdefghijb
a\x{1234}\x{4321}\x{3412}\x{3421}b
*** Failers
a\x{1234}b
/a(.{3,5})b/8
a\x{1234}xyb
a\x{1234}\x{4321}yb
a\x{1234}\x{4321}\x{3412}b
axxxxbcdefghijb
a\x{1234}\x{4321}\x{3412}\x{3421}b
axbxxbcdefghijb
axxxxxbcdefghijb
*** Failers
a\x{1234}b
axxxxxxbcdefghijb
/a(.{3,5}?)b/8
a\x{1234}xyb
a\x{1234}\x{4321}yb
a\x{1234}\x{4321}\x{3412}b
axxxxbcdefghijb
a\x{1234}\x{4321}\x{3412}\x{3421}b
axbxxbcdefghijb
axxxxxbcdefghijb
*** Failers
a\x{1234}b
axxxxxxbcdefghijb
/^[a\x{c0}]/8
*** Failers
\x{100}
/(?<=aXb)cd/8
aXbcd
/(?<=a\x{100}b)cd/8
a\x{100}bcd
/(?<=a\x{100000}b)cd/8
a\x{100000}bcd
/(?:\x{100}){3}b/8
\x{100}\x{100}\x{100}b
*** Failers
\x{100}\x{100}b
/\x{ab}/8
\x{ab}
\xc2\xab
*** Failers
\x00{ab}
/(?<=(.))X/8
WXYZ
\x{256}XYZ
*** Failers
XYZ
/[^a]+/8g
bcd
\x{100}aY\x{256}Z
/^[^a]{2}/8
\x{100}bc
/^[^a]{2,}/8
\x{100}bcAa
/^[^a]{2,}?/8
\x{100}bca
/[^a]+/8ig
bcd
\x{100}aY\x{256}Z
/^[^a]{2}/8i
\x{100}bc
/^[^a]{2,}/8i
\x{100}bcAa
/^[^a]{2,}?/8i
\x{100}bca
/\x{100}{0,0}/8
abcd
/\x{100}?/8
abcd
\x{100}\x{100}
/\x{100}{0,3}/8
\x{100}\x{100}
\x{100}\x{100}\x{100}\x{100}
/\x{100}*/8
abce
\x{100}\x{100}\x{100}\x{100}
/\x{100}{1,1}/8
abcd\x{100}\x{100}\x{100}\x{100}
/\x{100}{1,3}/8
abcd\x{100}\x{100}\x{100}\x{100}
/\x{100}+/8
abcd\x{100}\x{100}\x{100}\x{100}
/\x{100}{3}/8
abcd\x{100}\x{100}\x{100}XX
/\x{100}{3,5}/8
abcd\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}XX
/\x{100}{3,}/8
abcd\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}XX
/(?<=a\x{100}{2}b)X/8
Xyyya\x{100}\x{100}bXzzz
/\D*/8
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
/\D*/8
\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}
/\D/8
1X2
1\x{100}2
/>\S/8
> >X Y
> >\x{100} Y
/\d/8
\x{100}3
/\s/8
\x{100} X
/\D+/8
12abcd34
*** Failers
1234
/\D{2,3}/8
12abcd34
12ab34
*** Failers
1234
12a34
/\D{2,3}?/8
12abcd34
12ab34
*** Failers
1234
12a34
/\d+/8
12abcd34
*** Failers
/\d{2,3}/8
12abcd34
1234abcd
*** Failers
1.4
/\d{2,3}?/8
12abcd34
1234abcd
*** Failers
1.4
/\S+/8
12abcd34
*** Failers
\ \
/\S{2,3}/8
12abcd34
1234abcd
*** Failers
\ \
/\S{2,3}?/8
12abcd34
1234abcd
*** Failers
\ \
/>\s+</8
12> <34
*** Failers
/>\s{2,3}</8
ab> <cd
ab> <ce
*** Failers
ab> <cd
/>\s{2,3}?</8
ab> <cd
ab> <ce
*** Failers
ab> <cd
/\w+/8
12 34
*** Failers
+++=*!
/\w{2,3}/8
ab cd
abcd ce
*** Failers
a.b.c
/\w{2,3}?/8
ab cd
abcd ce
*** Failers
a.b.c
/\W+/8
12====34
*** Failers
abcd
/\W{2,3}/8
ab====cd
ab==cd
*** Failers
a.b.c
/\W{2,3}?/8
ab====cd
ab==cd
*** Failers
a.b.c
/[\x{100}]/8
\x{100}
Z\x{100}
\x{100}Z
*** Failers
/[Z\x{100}]/8
Z\x{100}
\x{100}
\x{100}Z
*** Failers
/[\x{100}\x{200}]/8
ab\x{100}cd
ab\x{200}cd
*** Failers
/[\x{100}-\x{200}]/8
ab\x{100}cd
ab\x{200}cd
ab\x{111}cd
*** Failers
/[z-\x{200}]/8
ab\x{100}cd
ab\x{200}cd
ab\x{111}cd
abzcd
ab|cd
*** Failers
/[Q\x{100}\x{200}]/8
ab\x{100}cd
ab\x{200}cd
Q?
*** Failers
/[Q\x{100}-\x{200}]/8
ab\x{100}cd
ab\x{200}cd
ab\x{111}cd
Q?
*** Failers
/[Qz-\x{200}]/8
ab\x{100}cd
ab\x{200}cd
ab\x{111}cd
abzcd
ab|cd
Q?
*** Failers
/[\x{100}\x{200}]{1,3}/8
ab\x{100}cd
ab\x{200}cd
ab\x{200}\x{100}\x{200}\x{100}cd
*** Failers
/[\x{100}\x{200}]{1,3}?/8
ab\x{100}cd
ab\x{200}cd
ab\x{200}\x{100}\x{200}\x{100}cd
*** Failers
/[Q\x{100}\x{200}]{1,3}/8
ab\x{100}cd
ab\x{200}cd
ab\x{200}\x{100}\x{200}\x{100}cd
*** Failers
/[Q\x{100}\x{200}]{1,3}?/8
ab\x{100}cd
ab\x{200}cd
ab\x{200}\x{100}\x{200}\x{100}cd
*** Failers
/(?<=[\x{100}\x{200}])X/8
abc\x{200}X
abc\x{100}X
*** Failers
X
/(?<=[Q\x{100}\x{200}])X/8
abc\x{200}X
abc\x{100}X
abQX
*** Failers
X
/(?<=[\x{100}\x{200}]{3})X/8
abc\x{100}\x{200}\x{100}X
*** Failers
abc\x{200}X
X
/[^\x{100}\x{200}]X/8
AX
\x{150}X
\x{500}X
*** Failers
\x{100}X
\x{200}X
/[^Q\x{100}\x{200}]X/8
AX
\x{150}X
\x{500}X
*** Failers
\x{100}X
\x{200}X
QX
/[^\x{100}-\x{200}]X/8
AX
\x{500}X
*** Failers
\x{100}X
\x{150}X
\x{200}X
/[z-\x{100}]/8i
z
Z
\x{100}
*** Failers
\x{102}
y
/[\xFF]/
>\xff<
/[\xff]/8
>\x{ff}<
/[^\xFF]/
XYZ
/[^\xff]/8
XYZ
\x{123}
/^[ac]*b/8
xb
/^[ac\x{100}]*b/8
xb
/^[^x]*b/8i
xb
/^[^x]*b/8
xb
/^\d*b/8
xb
/(|a)/g8
catac
a\x{256}a
/^\x{85}$/8i
\x{85}
/ End of testinput 8 /

816
libs/pcre/testdata/testinput9 vendored Normal file
View File

@@ -0,0 +1,816 @@
/\pL\P{Nd}/8
AB
*** Failers
A0
00
/\X./8
AB
A\x{300}BC
A\x{300}\x{301}\x{302}BC
*** Failers
\x{300}
/\X\X/8
ABC
A\x{300}B\x{300}\x{301}C
A\x{300}\x{301}\x{302}BC
*** Failers
\x{300}
/^\pL+/8
abcd
a
*** Failers
/^\PL+/8
1234
=
*** Failers
abcd
/^\X+/8
abcdA\x{300}\x{301}\x{302}
A\x{300}\x{301}\x{302}
A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}
a
*** Failers
\x{300}\x{301}\x{302}
/\X?abc/8
abc
A\x{300}abc
A\x{300}\x{301}\x{302}A\x{300}A\x{300}A\x{300}abcxyz
\x{300}abc
*** Failers
/^\X?abc/8
abc
A\x{300}abc
*** Failers
A\x{300}\x{301}\x{302}A\x{300}A\x{300}A\x{300}abcxyz
\x{300}abc
/\X*abc/8
abc
A\x{300}abc
A\x{300}\x{301}\x{302}A\x{300}A\x{300}A\x{300}abcxyz
\x{300}abc
*** Failers
/^\X*abc/8
abc
A\x{300}abc
A\x{300}\x{301}\x{302}A\x{300}A\x{300}A\x{300}abcxyz
*** Failers
\x{300}abc
/^\pL?=./8
A=b
=c
*** Failers
1=2
AAAA=b
/^\pL*=./8
AAAA=b
=c
*** Failers
1=2
/^\X{2,3}X/8
A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}X
A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}X
*** Failers
X
A\x{300}\x{301}\x{302}X
A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}A\x{300}\x{301}\x{302}X
/^\pC\pL\pM\pN\pP\pS\pZ</8
\x7f\x{c0}\x{30f}\x{660}\x{66c}\x{f01}\x{1680}<
\np\x{300}9!\$ <
** Failers
ap\x{300}9!\$ <
/^\PC/8
X
** Failers
\x7f
/^\PL/8
9
** Failers
\x{c0}
/^\PM/8
X
** Failers
\x{30f}
/^\PN/8
X
** Failers
\x{660}
/^\PP/8
X
** Failers
\x{66c}
/^\PS/8
X
** Failers
\x{f01}
/^\PZ/8
X
** Failers
\x{1680}
/^\p{Cc}/8
\x{017}
\x{09f}
** Failers
\x{0600}
/^\p{Cf}/8
\x{601}
** Failers
\x{09f}
/^\p{Cn}/8
** Failers
\x{09f}
/^\p{Co}/8
\x{f8ff}
** Failers
\x{09f}
/^\p{Cs}/8
\x{dfff}
** Failers
\x{09f}
/^\p{Ll}/8
a
** Failers
Z
\x{dfff}
/^\p{Lm}/8
\x{2b0}
** Failers
a
/^\p{Lo}/8
\x{1bb}
** Failers
a
\x{2b0}
/^\p{Lt}/8
\x{1c5}
** Failers
a
\x{2b0}
/^\p{Lu}/8
A
** Failers
\x{2b0}
/^\p{Mc}/8
\x{903}
** Failers
X
\x{300}
/^\p{Me}/8
\x{488}
** Failers
X
\x{903}
\x{300}
/^\p{Mn}/8
\x{300}
** Failers
X
\x{903}
/^\p{Nd}+/8
0123456789\x{660}\x{661}\x{662}\x{663}\x{664}\x{665}\x{666}\x{667}\x{668}\x{669}\x{66a}
\x{6f0}\x{6f1}\x{6f2}\x{6f3}\x{6f4}\x{6f5}\x{6f6}\x{6f7}\x{6f8}\x{6f9}\x{6fa}
\x{966}\x{967}\x{968}\x{969}\x{96a}\x{96b}\x{96c}\x{96d}\x{96e}\x{96f}\x{970}
** Failers
X
/^\p{Nl}/8
\x{16ee}
** Failers
X
\x{966}
/^\p{No}/8
\x{b2}
\x{b3}
** Failers
X
\x{16ee}
/^\p{Pc}/8
\x5f
\x{203f}
** Failers
X
-
\x{58a}
/^\p{Pd}/8
-
\x{58a}
** Failers
X
\x{203f}
/^\p{Pe}/8
)
]
}
\x{f3b}
** Failers
X
\x{203f}
(
[
{
\x{f3c}
/^\p{Pf}/8
\x{bb}
\x{2019}
** Failers
X
\x{203f}
/^\p{Pi}/8
\x{ab}
\x{2018}
** Failers
X
\x{203f}
/^\p{Po}/8
!
\x{37e}
** Failers
X
\x{203f}
/^\p{Ps}/8
(
[
{
\x{f3c}
** Failers
X
)
]
}
\x{f3b}
/^\p{Sc}+/8
$\x{a2}\x{a3}\x{a4}\x{a5}\x{a6}
\x{9f2}
** Failers
X
\x{2c2}
/^\p{Sk}/8
\x{2c2}
** Failers
X
\x{9f2}
/^\p{Sm}+/8
+<|~\x{ac}\x{2044}
** Failers
X
\x{9f2}
/^\p{So}/8
\x{a6}
\x{482}
** Failers
X
\x{9f2}
/^\p{Zl}/8
\x{2028}
** Failers
X
\x{2029}
/^\p{Zp}/8
\x{2029}
** Failers
X
\x{2028}
/^\p{Zs}/8
\ \
\x{a0}
\x{1680}
\x{180e}
\x{2000}
\x{2001}
** Failers
\x{2028}
\x{200d}
/\p{Nd}+(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}+?(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}{2,}(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}{2,}?(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}*(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}*?(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}{2}(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}{2,3}(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}{2,3}?(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}?(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}??(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}*+(..)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}*+(...)/8
\x{660}\x{661}\x{662}ABC
/\p{Nd}*+(....)/8
** Failers
\x{660}\x{661}\x{662}ABC
/\p{Lu}/8i
A
a\x{10a0}B
** Failers
a
\x{1d00}
/\p{^Lu}/8i
1234
** Failers
ABC
/\P{Lu}/8i
1234
** Failers
ABC
/(?<=A\p{Nd})XYZ/8
A2XYZ
123A5XYZPQR
ABA\x{660}XYZpqr
** Failers
AXYZ
XYZ
/(?<!\pL)XYZ/8
1XYZ
AB=XYZ..
XYZ
** Failers
WXYZ
/[\p{Nd}]/8
1234
/[\p{Nd}+-]+/8
1234
12-34
12+\x{661}-34
** Failers
abcd
/[\P{Nd}]+/8
abcd
** Failers
1234
/\D+/8
11111111111111111111111111111111111111111111111111111111111111111111111
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
/\P{Nd}+/8
11111111111111111111111111111111111111111111111111111111111111111111111
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
/[\D]+/8
11111111111111111111111111111111111111111111111111111111111111111111111
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
/[\P{Nd}]+/8
11111111111111111111111111111111111111111111111111111111111111111111111
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
/[\D\P{Nd}]+/8
11111111111111111111111111111111111111111111111111111111111111111111111
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
/\pL/8
a
A
/\pL/8i
a
A
/\p{Lu}/8
A
aZ
** Failers
abc
/\p{Lu}/8i
A
aZ
** Failers
abc
/\p{Ll}/8
a
Az
** Failers
ABC
/\p{Ll}/8i
a
Az
** Failers
ABC
/^\x{c0}$/8i
\x{c0}
\x{e0}
/^\x{e0}$/8i
\x{c0}
\x{e0}
/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8
A\x{391}\x{10427}\x{ff3a}\x{1fb0}
** Failers
a\x{391}\x{10427}\x{ff3a}\x{1fb0}
A\x{3b1}\x{10427}\x{ff3a}\x{1fb0}
A\x{391}\x{1044F}\x{ff3a}\x{1fb0}
A\x{391}\x{10427}\x{ff5a}\x{1fb0}
A\x{391}\x{10427}\x{ff3a}\x{1fb8}
/A\x{391}\x{10427}\x{ff3a}\x{1fb0}/8i
A\x{391}\x{10427}\x{ff3a}\x{1fb0}
a\x{391}\x{10427}\x{ff3a}\x{1fb0}
A\x{3b1}\x{10427}\x{ff3a}\x{1fb0}
A\x{391}\x{1044F}\x{ff3a}\x{1fb0}
A\x{391}\x{10427}\x{ff5a}\x{1fb0}
A\x{391}\x{10427}\x{ff3a}\x{1fb8}
/\x{391}+/8i
\x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}
/\x{391}{3,5}(.)/8i
\x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}X
/\x{391}{3,5}?(.)/8i
\x{391}\x{3b1}\x{3b1}\x{3b1}\x{391}X
/[\x{391}\x{ff3a}]/8i
\x{391}
\x{ff3a}
\x{3b1}
\x{ff5a}
/[\x{c0}\x{391}]/8i
\x{c0}
\x{e0}
/[\x{105}-\x{109}]/8i
\x{104}
\x{105}
\x{109}
** Failers
\x{100}
\x{10a}
/[z-\x{100}]/8i
Z
z
\x{39c}
\x{178}
|
\x{80}
\x{ff}
\x{100}
\x{101}
** Failers
\x{102}
Y
y
/[z-\x{100}]/8i
/^\X/8
A
A\x{300}BC
A\x{300}\x{301}\x{302}BC
*** Failers
\x{300}
/^[\X]/8
X123
*** Failers
AXYZ
/^(\X*)C/8
A\x{300}\x{301}\x{302}BCA\x{300}\x{301}
A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C
/^(\X*?)C/8
A\x{300}\x{301}\x{302}BCA\x{300}\x{301}
A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C
/^(\X*)(.)/8
A\x{300}\x{301}\x{302}BCA\x{300}\x{301}
A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C
/^(\X*?)(.)/8
A\x{300}\x{301}\x{302}BCA\x{300}\x{301}
A\x{300}\x{301}\x{302}BCA\x{300}\x{301}C
/^\X(.)/8
*** Failers
A\x{300}\x{301}\x{302}
/^\X{2,3}(.)/8
A\x{300}\x{301}B\x{300}X
A\x{300}\x{301}B\x{300}C\x{300}\x{301}
A\x{300}\x{301}B\x{300}C\x{300}\x{301}X
A\x{300}\x{301}B\x{300}C\x{300}\x{301}DA\x{300}X
/^\X{2,3}?(.)/8
A\x{300}\x{301}B\x{300}X
A\x{300}\x{301}B\x{300}C\x{300}\x{301}
A\x{300}\x{301}B\x{300}C\x{300}\x{301}X
A\x{300}\x{301}B\x{300}C\x{300}\x{301}DA\x{300}X
/^\pN{2,3}X/
12X
123X
*** Failers
X
1X
1234X
/\x{100}/i8
\x{100}
\x{101}
/^\p{Han}+/8
\x{2e81}\x{3007}\x{2f804}\x{31a0}
** Failers
\x{2e7f}
/^\P{Katakana}+/8
\x{3105}
** Failers
\x{30ff}
/^[\p{Arabic}]/8
\x{06e9}
\x{060b}
** Failers
X\x{06e9}
/^[\P{Yi}]/8
\x{2f800}
** Failers
\x{a014}
\x{a4c6}
/^\p{Any}X/8
AXYZ
\x{1234}XYZ
** Failers
X
/^\P{Any}X/8
** Failers
AX
/^\p{Any}?X/8
XYZ
AXYZ
\x{1234}XYZ
** Failers
ABXYZ
/^\P{Any}?X/8
XYZ
** Failers
AXYZ
\x{1234}XYZ
ABXYZ
/^\p{Any}+X/8
AXYZ
\x{1234}XYZ
A\x{1234}XYZ
** Failers
XYZ
/^\P{Any}+X/8
** Failers
AXYZ
\x{1234}XYZ
A\x{1234}XYZ
XYZ
/^\p{Any}*X/8
XYZ
AXYZ
\x{1234}XYZ
A\x{1234}XYZ
** Failers
/^\P{Any}*X/8
XYZ
** Failers
AXYZ
\x{1234}XYZ
A\x{1234}XYZ
/^[\p{Any}]X/8
AXYZ
\x{1234}XYZ
** Failers
X
/^[\P{Any}]X/8
** Failers
AX
/^[\p{Any}]?X/8
XYZ
AXYZ
\x{1234}XYZ
** Failers
ABXYZ
/^[\P{Any}]?X/8
XYZ
** Failers
AXYZ
\x{1234}XYZ
ABXYZ
/^[\p{Any}]+X/8
AXYZ
\x{1234}XYZ
A\x{1234}XYZ
** Failers
XYZ
/^[\P{Any}]+X/8
** Failers
AXYZ
\x{1234}XYZ
A\x{1234}XYZ
XYZ
/^[\p{Any}]*X/8
XYZ
AXYZ
\x{1234}XYZ
A\x{1234}XYZ
** Failers
/^[\P{Any}]*X/8
XYZ
** Failers
AXYZ
\x{1234}XYZ
A\x{1234}XYZ
/^\p{Any}{3,5}?/8
abcdefgh
\x{1234}\n\r\x{3456}xyz
/^\p{Any}{3,5}/8
abcdefgh
\x{1234}\n\r\x{3456}xyz
/^\P{Any}{3,5}?/8
** Failers
abcdefgh
\x{1234}\n\r\x{3456}xyz
/^\p{L&}X/8
AXY
aXY
\x{1c5}XY
** Failers
\x{1bb}XY
\x{2b0}XY
!XY
/^[\p{L&}]X/8
AXY
aXY
\x{1c5}XY
** Failers
\x{1bb}XY
\x{2b0}XY
!XY
/^\p{L&}+X/8
AXY
aXY
AbcdeXyz
\x{1c5}AbXY
abcDEXypqreXlmn
** Failers
\x{1bb}XY
\x{2b0}XY
!XY
/^[\p{L&}]+X/8
AXY
aXY
AbcdeXyz
\x{1c5}AbXY
abcDEXypqreXlmn
** Failers
\x{1bb}XY
\x{2b0}XY
!XY
/^\p{L&}+?X/8
AXY
aXY
AbcdeXyz
\x{1c5}AbXY
abcDEXypqreXlmn
** Failers
\x{1bb}XY
\x{2b0}XY
!XY
/^[\p{L&}]+?X/8
AXY
aXY
AbcdeXyz
\x{1c5}AbXY
abcDEXypqreXlmn
** Failers
\x{1bb}XY
\x{2b0}XY
!XY
/^\P{L&}X/8
!XY
\x{1bb}XY
\x{2b0}XY
** Failers
\x{1c5}XY
AXY
/^[\P{L&}]X/8
!XY
\x{1bb}XY
\x{2b0}XY
** Failers
\x{1c5}XY
AXY
/ End /

6356
libs/pcre/testdata/testoutput1 vendored Normal file

File diff suppressed because it is too large Load Diff

6554
libs/pcre/testdata/testoutput2 vendored Normal file

File diff suppressed because it is too large Load Diff

163
libs/pcre/testdata/testoutput3 vendored Normal file
View File

@@ -0,0 +1,163 @@
/^[\w]+/
*** Failers
No match
<20>cole
No match
/^[\w]+/Lfr_FR
<20>cole
0: <20>cole
/^[\w]+/
*** Failers
No match
<20>cole
No match
/^[\W]+/
<20>cole
0: \xc9
/^[\W]+/Lfr_FR
*** Failers
0: ***
<20>cole
No match
/[\b]/
\b
0: \x08
*** Failers
No match
a
No match
/[\b]/Lfr_FR
\b
0: \x08
*** Failers
No match
a
No match
/^\w+/
*** Failers
No match
<20>cole
No match
/^\w+/Lfr_FR
<20>cole
0: <20>cole
/(.+)\b(.+)/
<20>cole
0: \xc9cole
1: \xc9
2: cole
/(.+)\b(.+)/Lfr_FR
*** Failers
0: *** Failers
1: ***
2: Failers
<20>cole
No match
/<2F>cole/i
<20>cole
0: \xc9cole
*** Failers
No match
<20>cole
No match
/<2F>cole/iLfr_FR
<20>cole
0: <20>cole
<20>cole
0: <20>cole
/\w/IS
Capturing subpattern count = 0
No options
No first char
No need char
Starting byte set: 0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P
Q R S T U V W X Y Z _ a b c d e f g h i j k l m n o p q r s t u v w x y z
/\w/ISLfr_FR
Capturing subpattern count = 0
No options
No first char
No need char
Starting byte set: 0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P
Q R S T U V W X Y Z _ a b c d e f g h i j k l m n o p q r s t u v w x y z
<20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20>
<20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20> <20>
/^[\xc8-\xc9]/iLfr_FR
<20>cole
0: <20>
<20>cole
0: <20>
/^[\xc8-\xc9]/Lfr_FR
<20>cole
0: <20>
*** Failers
No match
<20>cole
No match
/\W+/Lfr_FR
>>>\xaa<<<
0: >>>
>>>\xba<<<
0: >>>
/[\W]+/Lfr_FR
>>>\xaa<<<
0: >>>
>>>\xba<<<
0: >>>
/[^[:alpha:]]+/Lfr_FR
>>>\xaa<<<
0: >>>
>>>\xba<<<
0: >>>
/\w+/Lfr_FR
>>>\xaa<<<
0: <20>
>>>\xba<<<
0: <20>
/[\w]+/Lfr_FR
>>>\xaa<<<
0: <20>
>>>\xba<<<
0: <20>
/[[:alpha:]]+/Lfr_FR
>>>\xaa<<<
0: <20>
>>>\xba<<<
0: <20>
/[[:alpha:]][[:lower:]][[:upper:]]/DLfr_FR
------------------------------------------------------------------
0 102 Bra 0
3 [A-Za-z<><7A><EFBFBD><EFBFBD>-<2D><>-<2D><>-<2D>]
36 [a-z<><7A>-<2D><>-<2D>]
69 [A-Z<>-<2D><>-<2D>]
102 102 Ket
105 End
------------------------------------------------------------------
Capturing subpattern count = 0
No options
No first char
No need char
/ End of testinput3 /

917
libs/pcre/testdata/testoutput4 vendored Normal file
View File

@@ -0,0 +1,917 @@
/-- Do not use the \x{} construct except with patterns that have the --/
/-- /8 option set, because PCRE doesn't recognize them as UTF-8 unless --/
No match
/-- that option is set. However, the latest Perls recognize them always. --/
No match
/a.b/8
acb
0: acb
a\x7fb
0: a\x{7f}b
a\x{100}b
0: a\x{100}b
*** Failers
No match
a\nb
No match
/a(.{3})b/8
a\x{4000}xyb
0: a\x{4000}xyb
1: \x{4000}xy
a\x{4000}\x7fyb
0: a\x{4000}\x{7f}yb
1: \x{4000}\x{7f}y
a\x{4000}\x{100}yb
0: a\x{4000}\x{100}yb
1: \x{4000}\x{100}y
*** Failers
No match
a\x{4000}b
No match
ac\ncb
No match
/a(.*?)(.)/
a\xc0\x88b
0: a\xc0
1:
2: \xc0
/a(.*?)(.)/8
a\x{100}b
0: a\x{100}
1:
2: \x{100}
/a(.*)(.)/
a\xc0\x88b
0: a\xc0\x88b
1: \xc0\x88
2: b
/a(.*)(.)/8
a\x{100}b
0: a\x{100}b
1: \x{100}
2: b
/a(.)(.)/
a\xc0\x92bcd
0: a\xc0\x92
1: \xc0
2: \x92
/a(.)(.)/8
a\x{240}bcd
0: a\x{240}b
1: \x{240}
2: b
/a(.?)(.)/
a\xc0\x92bcd
0: a\xc0\x92
1: \xc0
2: \x92
/a(.?)(.)/8
a\x{240}bcd
0: a\x{240}b
1: \x{240}
2: b
/a(.??)(.)/
a\xc0\x92bcd
0: a\xc0
1:
2: \xc0
/a(.??)(.)/8
a\x{240}bcd
0: a\x{240}
1:
2: \x{240}
/a(.{3})b/8
a\x{1234}xyb
0: a\x{1234}xyb
1: \x{1234}xy
a\x{1234}\x{4321}yb
0: a\x{1234}\x{4321}yb
1: \x{1234}\x{4321}y
a\x{1234}\x{4321}\x{3412}b
0: a\x{1234}\x{4321}\x{3412}b
1: \x{1234}\x{4321}\x{3412}
*** Failers
No match
a\x{1234}b
No match
ac\ncb
No match
/a(.{3,})b/8
a\x{1234}xyb
0: a\x{1234}xyb
1: \x{1234}xy
a\x{1234}\x{4321}yb
0: a\x{1234}\x{4321}yb
1: \x{1234}\x{4321}y
a\x{1234}\x{4321}\x{3412}b
0: a\x{1234}\x{4321}\x{3412}b
1: \x{1234}\x{4321}\x{3412}
axxxxbcdefghijb
0: axxxxbcdefghijb
1: xxxxbcdefghij
a\x{1234}\x{4321}\x{3412}\x{3421}b
0: a\x{1234}\x{4321}\x{3412}\x{3421}b
1: \x{1234}\x{4321}\x{3412}\x{3421}
*** Failers
No match
a\x{1234}b
No match
/a(.{3,}?)b/8
a\x{1234}xyb
0: a\x{1234}xyb
1: \x{1234}xy
a\x{1234}\x{4321}yb
0: a\x{1234}\x{4321}yb
1: \x{1234}\x{4321}y
a\x{1234}\x{4321}\x{3412}b
0: a\x{1234}\x{4321}\x{3412}b
1: \x{1234}\x{4321}\x{3412}
axxxxbcdefghijb
0: axxxxb
1: xxxx
a\x{1234}\x{4321}\x{3412}\x{3421}b
0: a\x{1234}\x{4321}\x{3412}\x{3421}b
1: \x{1234}\x{4321}\x{3412}\x{3421}
*** Failers
No match
a\x{1234}b
No match
/a(.{3,5})b/8
a\x{1234}xyb
0: a\x{1234}xyb
1: \x{1234}xy
a\x{1234}\x{4321}yb
0: a\x{1234}\x{4321}yb
1: \x{1234}\x{4321}y
a\x{1234}\x{4321}\x{3412}b
0: a\x{1234}\x{4321}\x{3412}b
1: \x{1234}\x{4321}\x{3412}
axxxxbcdefghijb
0: axxxxb
1: xxxx
a\x{1234}\x{4321}\x{3412}\x{3421}b
0: a\x{1234}\x{4321}\x{3412}\x{3421}b
1: \x{1234}\x{4321}\x{3412}\x{3421}
axbxxbcdefghijb
0: axbxxb
1: xbxx
axxxxxbcdefghijb
0: axxxxxb
1: xxxxx
*** Failers
No match
a\x{1234}b
No match
axxxxxxbcdefghijb
No match
/a(.{3,5}?)b/8
a\x{1234}xyb
0: a\x{1234}xyb
1: \x{1234}xy
a\x{1234}\x{4321}yb
0: a\x{1234}\x{4321}yb
1: \x{1234}\x{4321}y
a\x{1234}\x{4321}\x{3412}b
0: a\x{1234}\x{4321}\x{3412}b
1: \x{1234}\x{4321}\x{3412}
axxxxbcdefghijb
0: axxxxb
1: xxxx
a\x{1234}\x{4321}\x{3412}\x{3421}b
0: a\x{1234}\x{4321}\x{3412}\x{3421}b
1: \x{1234}\x{4321}\x{3412}\x{3421}
axbxxbcdefghijb
0: axbxxb
1: xbxx
axxxxxbcdefghijb
0: axxxxxb
1: xxxxx
*** Failers
No match
a\x{1234}b
No match
axxxxxxbcdefghijb
No match
/^[a\x{c0}]/8
*** Failers
No match
\x{100}
No match
/(?<=aXb)cd/8
aXbcd
0: cd
/(?<=a\x{100}b)cd/8
a\x{100}bcd
0: cd
/(?<=a\x{100000}b)cd/8
a\x{100000}bcd
0: cd
/(?:\x{100}){3}b/8
\x{100}\x{100}\x{100}b
0: \x{100}\x{100}\x{100}b
*** Failers
No match
\x{100}\x{100}b
No match
/\x{ab}/8
\x{ab}
0: \x{ab}
\xc2\xab
0: \x{ab}
*** Failers
No match
\x00{ab}
No match
/(?<=(.))X/8
WXYZ
0: X
1: W
\x{256}XYZ
0: X
1: \x{256}
*** Failers
No match
XYZ
No match
/X(\C{3})/8
X\x{1234}
0: X\x{1234}
1: \x{1234}
/X(\C{4})/8
X\x{1234}YZ
0: X\x{1234}Y
1: \x{1234}Y
/X\C*/8
XYZabcdce
0: XYZabcdce
/X\C*?/8
XYZabcde
0: X
/X\C{3,5}/8
Xabcdefg
0: Xabcde
X\x{1234}
0: X\x{1234}
X\x{1234}YZ
0: X\x{1234}YZ
X\x{1234}\x{512}
0: X\x{1234}\x{512}
X\x{1234}\x{512}YZ
0: X\x{1234}\x{512}
/X\C{3,5}?/8
Xabcdefg
0: Xabc
X\x{1234}
0: X\x{1234}
X\x{1234}YZ
0: X\x{1234}
X\x{1234}\x{512}
0: X\x{1234}
/[^a]+/8g
bcd
0: bcd
\x{100}aY\x{256}Z
0: \x{100}
0: Y\x{256}Z
/^[^a]{2}/8
\x{100}bc
0: \x{100}b
/^[^a]{2,}/8
\x{100}bcAa
0: \x{100}bcA
/^[^a]{2,}?/8
\x{100}bca
0: \x{100}b
/[^a]+/8ig
bcd
0: bcd
\x{100}aY\x{256}Z
0: \x{100}
0: Y\x{256}Z
/^[^a]{2}/8i
\x{100}bc
0: \x{100}b
/^[^a]{2,}/8i
\x{100}bcAa
0: \x{100}bc
/^[^a]{2,}?/8i
\x{100}bca
0: \x{100}b
/\x{100}{0,0}/8
abcd
0:
/\x{100}?/8
abcd
0:
\x{100}\x{100}
0: \x{100}
/\x{100}{0,3}/8
\x{100}\x{100}
0: \x{100}\x{100}
\x{100}\x{100}\x{100}\x{100}
0: \x{100}\x{100}\x{100}
/\x{100}*/8
abce
0:
\x{100}\x{100}\x{100}\x{100}
0: \x{100}\x{100}\x{100}\x{100}
/\x{100}{1,1}/8
abcd\x{100}\x{100}\x{100}\x{100}
0: \x{100}
/\x{100}{1,3}/8
abcd\x{100}\x{100}\x{100}\x{100}
0: \x{100}\x{100}\x{100}
/\x{100}+/8
abcd\x{100}\x{100}\x{100}\x{100}
0: \x{100}\x{100}\x{100}\x{100}
/\x{100}{3}/8
abcd\x{100}\x{100}\x{100}XX
0: \x{100}\x{100}\x{100}
/\x{100}{3,5}/8
abcd\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}XX
0: \x{100}\x{100}\x{100}\x{100}\x{100}
/\x{100}{3,}/8
abcd\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}XX
0: \x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}
/(?<=a\x{100}{2}b)X/8+
Xyyya\x{100}\x{100}bXzzz
0: X
0+ zzz
/\D*/8
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
0: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
/\D*/8
\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}
0: \x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}\x{100}
/\D/8
1X2
0: X
1\x{100}2
0: \x{100}
/>\S/8
> >X Y
0: >X
> >\x{100} Y
0: >\x{100}
/\d/8
\x{100}3
0: 3
/\s/8
\x{100} X
0:
/\D+/8
12abcd34
0: abcd
*** Failers
0: *** Failers
1234
No match
/\D{2,3}/8
12abcd34
0: abc
12ab34
0: ab
*** Failers
0: ***
1234
No match
12a34
No match
/\D{2,3}?/8
12abcd34
0: ab
12ab34
0: ab
*** Failers
0: **
1234
No match
12a34
No match
/\d+/8
12abcd34
0: 12
*** Failers
No match
/\d{2,3}/8
12abcd34
0: 12
1234abcd
0: 123
*** Failers
No match
1.4
No match
/\d{2,3}?/8
12abcd34
0: 12
1234abcd
0: 12
*** Failers
No match
1.4
No match
/\S+/8
12abcd34
0: 12abcd34
*** Failers
0: ***
\ \
No match
/\S{2,3}/8
12abcd34
0: 12a
1234abcd
0: 123
*** Failers
0: ***
\ \
No match
/\S{2,3}?/8
12abcd34
0: 12
1234abcd
0: 12
*** Failers
0: **
\ \
No match
/>\s+</8+
12> <34
0: > <
0+ 34
*** Failers
No match
/>\s{2,3}</8+
ab> <cd
0: > <
0+ cd
ab> <ce
0: > <
0+ ce
*** Failers
No match
ab> <cd
No match
/>\s{2,3}?</8+
ab> <cd
0: > <
0+ cd
ab> <ce
0: > <
0+ ce
*** Failers
No match
ab> <cd
No match
/\w+/8
12 34
0: 12
*** Failers
0: Failers
+++=*!
No match
/\w{2,3}/8
ab cd
0: ab
abcd ce
0: abc
*** Failers
0: Fai
a.b.c
No match
/\w{2,3}?/8
ab cd
0: ab
abcd ce
0: ab
*** Failers
0: Fa
a.b.c
No match
/\W+/8
12====34
0: ====
*** Failers
0: ***
abcd
No match
/\W{2,3}/8
ab====cd
0: ===
ab==cd
0: ==
*** Failers
0: ***
a.b.c
No match
/\W{2,3}?/8
ab====cd
0: ==
ab==cd
0: ==
*** Failers
0: **
a.b.c
No match
/[\x{100}]/8
\x{100}
0: \x{100}
Z\x{100}
0: \x{100}
\x{100}Z
0: \x{100}
*** Failers
No match
/[Z\x{100}]/8
Z\x{100}
0: Z
\x{100}
0: \x{100}
\x{100}Z
0: \x{100}
*** Failers
No match
/[\x{100}\x{200}]/8
ab\x{100}cd
0: \x{100}
ab\x{200}cd
0: \x{200}
*** Failers
No match
/[\x{100}-\x{200}]/8
ab\x{100}cd
0: \x{100}
ab\x{200}cd
0: \x{200}
ab\x{111}cd
0: \x{111}
*** Failers
No match
/[z-\x{200}]/8
ab\x{100}cd
0: \x{100}
ab\x{200}cd
0: \x{200}
ab\x{111}cd
0: \x{111}
abzcd
0: z
ab|cd
0: |
*** Failers
No match
/[Q\x{100}\x{200}]/8
ab\x{100}cd
0: \x{100}
ab\x{200}cd
0: \x{200}
Q?
0: Q
*** Failers
No match
/[Q\x{100}-\x{200}]/8
ab\x{100}cd
0: \x{100}
ab\x{200}cd
0: \x{200}
ab\x{111}cd
0: \x{111}
Q?
0: Q
*** Failers
No match
/[Qz-\x{200}]/8
ab\x{100}cd
0: \x{100}
ab\x{200}cd
0: \x{200}
ab\x{111}cd
0: \x{111}
abzcd
0: z
ab|cd
0: |
Q?
0: Q
*** Failers
No match
/[\x{100}\x{200}]{1,3}/8
ab\x{100}cd
0: \x{100}
ab\x{200}cd
0: \x{200}
ab\x{200}\x{100}\x{200}\x{100}cd
0: \x{200}\x{100}\x{200}
*** Failers
No match
/[\x{100}\x{200}]{1,3}?/8
ab\x{100}cd
0: \x{100}
ab\x{200}cd
0: \x{200}
ab\x{200}\x{100}\x{200}\x{100}cd
0: \x{200}
*** Failers
No match
/[Q\x{100}\x{200}]{1,3}/8
ab\x{100}cd
0: \x{100}
ab\x{200}cd
0: \x{200}
ab\x{200}\x{100}\x{200}\x{100}cd
0: \x{200}\x{100}\x{200}
*** Failers
No match
/[Q\x{100}\x{200}]{1,3}?/8
ab\x{100}cd
0: \x{100}
ab\x{200}cd
0: \x{200}
ab\x{200}\x{100}\x{200}\x{100}cd
0: \x{200}
*** Failers
No match
/(?<=[\x{100}\x{200}])X/8
abc\x{200}X
0: X
abc\x{100}X
0: X
*** Failers
No match
X
No match
/(?<=[Q\x{100}\x{200}])X/8
abc\x{200}X
0: X
abc\x{100}X
0: X
abQX
0: X
*** Failers
No match
X
No match
/(?<=[\x{100}\x{200}]{3})X/8
abc\x{100}\x{200}\x{100}X
0: X
*** Failers
No match
abc\x{200}X
No match
X
No match
/[^\x{100}\x{200}]X/8
AX
0: AX
\x{150}X
0: \x{150}X
\x{500}X
0: \x{500}X
*** Failers
No match
\x{100}X
No match
\x{200}X
No match
/[^Q\x{100}\x{200}]X/8
AX
0: AX
\x{150}X
0: \x{150}X
\x{500}X
0: \x{500}X
*** Failers
No match
\x{100}X
No match
\x{200}X
No match
QX
No match
/[^\x{100}-\x{200}]X/8
AX
0: AX
\x{500}X
0: \x{500}X
*** Failers
No match
\x{100}X
No match
\x{150}X
No match
\x{200}X
No match
/a\Cb/
aXb
0: aXb
a\nb
0: a\x0ab
/a\Cb/8
aXb
0: aXb
a\nb
0: a\x{0a}b
*** Failers
No match
a\x{100}b
No match
/[z-\x{100}]/8i
z
0: z
Z
0: Z
\x{100}
0: \x{100}
*** Failers
No match
\x{102}
No match
y
No match
/[\xFF]/
>\xff<
0: \xff
/[\xff]/8
>\x{ff}<
0: \x{ff}
/[^\xFF]/
XYZ
0: X
/[^\xff]/8
XYZ
0: X
\x{123}
0: \x{123}
/^[ac]*b/8
xb
No match
/^[ac\x{100}]*b/8
xb
No match
/^[^x]*b/8i
xb
No match
/^[^x]*b/8
xb
No match
/^\d*b/8
xb
No match
/(|a)/g8
catac
0:
1:
0:
1:
0: a
1: a
0:
1:
0:
1:
0: a
1: a
0:
1:
0:
1:
a\x{256}a
0:
1:
0: a
1: a
0:
1:
0:
1:
0: a
1: a
0:
1:
/^\x{85}$/8i
\x{85}
0: \x{85}
/^ሴ/8
0: \x{1234}
/^\ሴ/8
0: \x{1234}
"(?s)(.{1,5})"8
abcdefg
0: abcde
1: abcde
ab
0: ab
1: ab
/ End of testinput4 /

1123
libs/pcre/testdata/testoutput5 vendored Normal file

File diff suppressed because it is too large Load Diff

1413
libs/pcre/testdata/testoutput6 vendored Normal file

File diff suppressed because it is too large Load Diff

6731
libs/pcre/testdata/testoutput7 vendored Normal file

File diff suppressed because it is too large Load Diff

1031
libs/pcre/testdata/testoutput8 vendored Normal file

File diff suppressed because it is too large Load Diff

1627
libs/pcre/testdata/testoutput9 vendored Normal file

File diff suppressed because it is too large Load Diff