Commit Graph

27 Commits

Author SHA1 Message Date
Nicholas Wilson
eb3bd3cf14 New pcre2_next_match() API to simplify pcre2demo, test, and substitute (#733)
* The primary purpose of pcre2_next_match() is to make it much easier for
  PCRE2 clients to iterate over matches, without needing an advanced knowledge
  of regular expressions.
* Secondly, we can simplify our own code by merging the three duplicate
  implementations of the /g global match behaviour: pcre2demo, pcre2_substitute,
  and pcre2test.
* Thirdly, as I look closely at the issue, I can improve the documentation.
* Fourthly, I would like to actually simplify the logic, removing a complex loop
  which makes several match attempts, swallows duplicate matches, and more.
  We can have identical behaviour with a simple retry using
  PCRE2_NOTEMPTY_ATSTART.
2025-03-24 13:29:52 +00:00
Nicholas Wilson
1fffb0d44e Updates to the README and some documentation (#681) 2025-02-01 15:50:20 +00:00
Nicholas Wilson
9503e68b7c Add substitute case callout function (#512)
* Add substitute case callout function

* Fix foolish misunderstanding

* Fix trivial build error

* Fix non-Unicode tests
2024-10-04 16:57:58 +01:00
Philip Hazel
012ab39bd8 Correct substitution documentation 2024-09-24 09:23:40 +01:00
Philip Hazel
05aafb2e30 Implement pcre2_set_max_pattern_compiled_length() and set this limit in the fuzzer 2024-04-24 09:32:25 +01:00
Philip Hazel
5974a84364 Update documentation for variable-length lookbehinds 2023-08-11 18:38:20 +01:00
Philip.Hazel
0970ae4195 Add the pcre2_maketables_free() function. 2019-09-03 14:16:07 +00:00
Philip.Hazel
bca9888a2c Implemented pcre2_get_match_data_size(). 2019-07-16 15:50:09 +00:00
Philip.Hazel
614e144f6b Fix typo. 2018-07-11 09:48:32 +00:00
Philip.Hazel
a23715d7b1 Document experimental pattern conversion functions and remove unimplemented
features.
2017-07-12 16:34:49 +00:00
Philip.Hazel
dfc9712bcd Add additional compile options and PCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES. 2017-05-17 17:55:11 +00:00
Philip.Hazel
14989bd454 Add explicit heap limiting options to pcre2_match(), with associated features
for listing, configuring, etc.
2017-04-11 11:47:25 +00:00
Philip.Hazel
ed9f34b06b Documentation update 2017-03-31 16:49:33 +00:00
Philip.Hazel
f17eb554bf Documentation update. 2017-03-25 17:50:54 +00:00
Philip.Hazel
2aec84e37e Add pcre2_code_copy_with_tables(). 2016-11-22 15:37:02 +00:00
Philip.Hazel
be1ac011ec Update HTML docs. 2016-02-26 18:32:07 +00:00
Philip.Hazel
b7ee0684e3 Implement pcre2_set_max_pattern_length() 2015-11-05 17:33:39 +00:00
Philip.Hazel
c70450d08b Documentation for offset limits. 2015-09-22 16:51:11 +00:00
Philip.Hazel
4e61019ffe Implement pcre2_callout_enumerate(). 2015-03-23 15:52:08 +00:00
Philip.Hazel
5438fc8a6a Add serialization functions and tests with updated pcre2test. Fix
PCRE2_INFO_SIZE issues.
2015-01-23 16:51:47 +00:00
Philip.Hazel
78b9e3d078 More documentation edits. 2014-11-17 16:59:02 +00:00
Philip.Hazel
b3ac0ffb32 Substitute code update and documentation. 2014-11-11 16:51:07 +00:00
Philip.Hazel
08e3107cbe Changed jit_stack_alloc to jit_stack_create. 2014-11-03 17:13:00 +00:00
Philip.Hazel
b23ec7e1f5 More per-function documentation; revised perltest.sh replaces perltest.pl. 2014-10-25 14:16:46 +00:00
Philip.Hazel
db8480a1e0 A lot more documentation. 2014-10-21 16:33:30 +00:00
Philip.Hazel
c3799e750f Tidy a lot of files (remove trailing spaces) 2014-10-20 17:28:49 +00:00
Philip.Hazel
d5495a30f4 Documentation scripts 2014-09-23 11:35:51 +00:00