70 |
testoutput2 test results corresponding to testinput2 |
testoutput2 test results corresponding to testinput2 |
71 |
testoutput3 test results corresponding to testinput3 |
testoutput3 test results corresponding to testinput3 |
72 |
testoutput4 test results corresponding to testinput4 |
testoutput4 test results corresponding to testinput4 |
73 |
|
dll.mk for Win32 DLL |
74 |
|
pcre.def ditto |
75 |
|
|
76 |
To build PCRE on a Unix system, first edit Makefile for your system. It is a |
To build PCRE on a Unix system, first edit Makefile for your system. It is a |
77 |
fairly simple make file, and there are some comments near the top, after the |
fairly simple make file, and there are some comments near the top, after the |
88 |
It should be straightforward to build PCRE on any system that has a Standard C |
It should be straightforward to build PCRE on any system that has a Standard C |
89 |
compiler. |
compiler. |
90 |
|
|
91 |
|
Some help in building a Win32 DLL of PCRE in GnuWin32 environments was |
92 |
|
contributed by Paul.Sokolovsky@technologist.com. These environments are |
93 |
|
Mingw32 (http://www.xraylith.wisc.edu/~khan/software/gnu-win32/) and |
94 |
|
CygWin (http://sourceware.cygnus.com/cygwin/). Paul comments: |
95 |
|
|
96 |
|
For CygWin, set CFLAGS=-mno-cygwin, and do 'make dll'. You'll get |
97 |
|
pcre.dll (containing pcreposix also), libpcre.dll.a, and dynamically |
98 |
|
linked pgrep and pcretest. If you have /bin/sh, run RunTest (three |
99 |
|
main test go ok, locale not supported). |
100 |
|
|
101 |
To test PCRE, run the RunTest script in the pcre directory. This can also be |
To test PCRE, run the RunTest script in the pcre directory. This can also be |
102 |
run by "make runtest". It runs the pcretest test program (which is documented |
run by "make runtest". It runs the pcretest test program (which is documented |
103 |
below) on each of the testinput files in turn, and compares the output with the |
below) on each of the testinput files in turn, and compares the output with the |
232 |
/E, and /X set PCRE_ANCHORED, PCRE_DOLLAR_ENDONLY, and PCRE_EXTRA respectively. |
/E, and /X set PCRE_ANCHORED, PCRE_DOLLAR_ENDONLY, and PCRE_EXTRA respectively. |
233 |
|
|
234 |
Searching for all possible matches within each subject string can be requested |
Searching for all possible matches within each subject string can be requested |
235 |
by the /g or /G modifier. The /g modifier behaves similarly to the way it does |
by the /g or /G modifier. After finding a match, PCRE is called again to search |
236 |
in Perl. After finding a match, PCRE is called again to search the remainder of |
the remainder of the subject string. The difference between /g and /G is that |
237 |
the subject string. The difference between /g and /G is that the former uses |
the former uses the startoffset argument to pcre_exec() to start searching at |
238 |
the start_offset argument to pcre_exec() to start searching at a new point |
a new point within the entire string (which is in effect what Perl does), |
239 |
within the entire string, whereas the latter passes over a shortened substring. |
whereas the latter passes over a shortened substring. This makes a difference |
240 |
This makes a difference to the matching process if the pattern begins with a |
to the matching process if the pattern begins with a lookbehind assertion |
241 |
lookbehind assertion (including \b or \B). |
(including \b or \B). |
242 |
|
|
243 |
|
If any call to pcre_exec() in a /g or /G sequence matches an empty string, the |
244 |
|
next call is done with the PCRE_NOTEMPTY flag set so that it cannot match an |
245 |
|
empty string again. This imitates the way Perl handles such cases when using |
246 |
|
the /g modifier or the split() function. |
247 |
|
|
248 |
There are a number of other modifiers for controlling the way pcretest |
There are a number of other modifiers for controlling the way pcretest |
249 |
operates. |
operates. |