PCRE2_SUB..._LIST_GET(3) Library Functions ManualPCRE2_SUB..._LIST_GET(3)PCRE2 - Perl-compatible regular expressions (revised API)
#include <pcre2.h>int pcre2_substring_list_get(pcre2_match_data *match_data,PCRE2_UCHAR ***listptr, PCRE2_SIZE **lengthsptr);
This is a convenience function for extracting all the captured substrings after a pattern match. It builds a list of pointers to the strings, and (optionally) a second list that contains their lengths (in code units), excluding a terminating zero that is added to each of them. All this is done in a single block of memory that is obtained using the same memory allocation function that was used to get the match data block. The convenience functionpcre2_substring_list_free()can be used to free it when it is no longer needed. The arguments are:match_data The match data blocklistptr Where to put a pointer to the listlengthsptr Where to put a pointer to the lengths, or NULL A pointer to a list of pointers is put in the variable whose address is inlistptr. The list is terminated by a NULL pointer. Iflengthsptr is not NULL, a matching list of lengths is created, and its address is placed inlengthsptr. The yield of the function is zero on success or PCRE2_ERROR_NOMEMORY if sufficient memory could not be obtained. There is a complete description of the PCRE2 native API in thepcre2apipage and a description of the POSIX API in thepcre2posix page.
This page is part of thePCRE (Perl Compatible Regular Expressions) project. Information about the project can be found at ⟨http://www.pcre.org/⟩. If you have a bug report for this manual page, see ⟨http://bugs.exim.org/enter_bug.cgi?product=PCRE⟩. This page was obtained from the tarball fetched from ⟨https://github.com/PhilipHazel/pcre2.git⟩ on 2025-08-11. If you discover any rendering problems in this HTML version of the page, or you believe there is a better or more up-to-date source for the page, or you have corrections or improvements to the information in this COLOPHON (which isnot part of the original manual page), send a mail to man-pages@man7.orgPCRE2 10.46-DEV 21 October 2014PCRE2_SUB..._LIST_GET(3)HTML rendering created 2025-09-06 byMichael Kerrisk, author ofThe Linux Programming Interface. For details of in-depthLinux/UNIX system programming training courses that I teach, lookhere. Hosting byjambit GmbH. | ![]() |