8 |
.br |
.br |
9 |
.B pcre *pcre_compile(const char *\fIpattern\fR, int \fIoptions\fR, |
.B pcre *pcre_compile(const char *\fIpattern\fR, int \fIoptions\fR, |
10 |
.ti +5n |
.ti +5n |
11 |
.B char **\fIerrptr\fR, int *\fIerroffset\fR); |
.B const char **\fIerrptr\fR, int *\fIerroffset\fR); |
12 |
.PP |
.PP |
13 |
.br |
.br |
14 |
.B pcre_extra *pcre_study(const pcre *\fIcode\fR, int \fIoptions\fR, |
.B pcre_extra *pcre_study(const pcre *\fIcode\fR, int \fIoptions\fR, |
15 |
.ti +5n |
.ti +5n |
16 |
.B char **\fIerrptr\fR); |
.B const char **\fIerrptr\fR); |
17 |
.PP |
.PP |
18 |
.br |
.br |
19 |
.B int pcre_exec(const pcre *\fIcode\fR, "const pcre_extra *\fIextra\fR," |
.B int pcre_exec(const pcre *\fIcode\fR, "const pcre_extra *\fIextra\fR," |
603 |
|
|
604 |
.*/foo |
.*/foo |
605 |
|
|
606 |
is matched against the string "/foo/this/is/not" then after the greedy .* |
is matched against the string "/this/string/is/not" then after the greedy .* |
607 |
has swallowed the whole string, PCRE keeps backtracking all the way to the |
has swallowed the whole string, PCRE keeps backtracking all the way to the |
608 |
beginning before failing. If, on the other hand, the expression is |
beginning before failing. If, on the other hand, the expression is |
609 |
|
|