51 |
9. The restrictions on what a pattern can contain when partial matching is |
9. The restrictions on what a pattern can contain when partial matching is |
52 |
requested for pcre_exec() have been removed. All patterns can now be |
requested for pcre_exec() have been removed. All patterns can now be |
53 |
partially matched by this function. In addition, if there are at least two |
partially matched by this function. In addition, if there are at least two |
54 |
slots in the offset vector, the offsets of the first-encountered partial |
slots in the offset vector, the offset of the earliest inspected character |
55 |
match are set in them when PCRE_ERROR_PARTIAL is returned. |
for the match and the offset of the end of the subject are set in them when |
56 |
|
PCRE_ERROR_PARTIAL is returned. |
57 |
|
|
58 |
10. Partial matching has been split into two forms: PCRE_PARTIAL_SOFT, which is |
10. Partial matching has been split into two forms: PCRE_PARTIAL_SOFT, which is |
59 |
synonymous with PCRE_PARTIAL, for backwards compatibility, and |
synonymous with PCRE_PARTIAL, for backwards compatibility, and |
74 |
earlier partial match, unless partial matching was again requested. For |
earlier partial match, unless partial matching was again requested. For |
75 |
example, with the pattern /dog.(body)?/, the "must contain" character is |
example, with the pattern /dog.(body)?/, the "must contain" character is |
76 |
"g". If the first part-match was for the string "dog", restarting with |
"g". If the first part-match was for the string "dog", restarting with |
77 |
"sbody" failed. |
"sbody" failed. This bug has been fixed. |
78 |
|
|
79 |
13. Added a pcredemo man page, created automatically from the pcredemo.c file, |
13. The string returned by pcre_dfa_exec() after a partial match has been |
80 |
|
changed so that it starts at the first inspected character rather than the |
81 |
|
first character of the match. This makes a difference only if the pattern |
82 |
|
starts with a lookbehind assertion or \b or \B (\K is not supported by |
83 |
|
pcre_dfa_exec()). It's an incompatible change, but it makes the two |
84 |
|
matching functions compatible, and I think it's the right thing to do. |
85 |
|
|
86 |
|
14. Added a pcredemo man page, created automatically from the pcredemo.c file, |
87 |
so that the demonstration program is easily available in environments where |
so that the demonstration program is easily available in environments where |
88 |
PCRE has not been installed from source. |
PCRE has not been installed from source. |
89 |
|
|
90 |
14. Arranged to add -DPCRE_STATIC to cflags in libpcre.pc, libpcreposix.cp, |
15. Arranged to add -DPCRE_STATIC to cflags in libpcre.pc, libpcreposix.cp, |
91 |
libpcrecpp.pc and pcre-config when PCRE is not compiled as a shared |
libpcrecpp.pc and pcre-config when PCRE is not compiled as a shared |
92 |
library. |
library. |
93 |
|
|
94 |
15. Added REG_UNGREEDY to the pcreposix interface, at the request of a user. |
16. Added REG_UNGREEDY to the pcreposix interface, at the request of a user. |
95 |
It maps to PCRE_UNGREEDY. It is not, of course, POSIX-compatible, but it |
It maps to PCRE_UNGREEDY. It is not, of course, POSIX-compatible, but it |
96 |
is not the first non-POSIX option to be added. Clearly some people find |
is not the first non-POSIX option to be added. Clearly some people find |
97 |
these options useful. |
these options useful. |
98 |
|
|
99 |
16. If a caller to the POSIX matching function regexec() passes a non-zero |
17. If a caller to the POSIX matching function regexec() passes a non-zero |
100 |
value for \fInmatch\fP with a NULL value for \fIpmatch\fP, the value of |
value for \fInmatch\fP with a NULL value for \fIpmatch\fP, the value of |
101 |
\fInmatch\fP is forced to zero. |
\fInmatch\fP is forced to zero. |
102 |
|
|