PCRE — Perl-compatible regular expressions


#include <pcre.h>
int pcre_copy_named_substring( const pcre *code,
  const char *subject,
  int *ovector,
  int stringcount,
  const char *stringname,
  char *buffer,
  int buffersize);
int pcre16_copy_named_substring( const pcre16 *code,
  PCRE_SPTR16 subject,
  int *ovector,
  int stringcount,
  PCRE_SPTR16 stringname,
  PCRE_UCHAR16 *buffer,
  int buffersize);
int pcre32_copy_named_substring( const pcre32 *code,
  PCRE_SPTR32 subject,
  int *ovector,
  int stringcount,
  PCRE_SPTR32 stringname,
  PCRE_UCHAR32 *buffer,
  int buffersize);


This is a convenience function for extracting a captured substring, identified by name, into a given buffer. The arguments are:

 code          Pattern that was successfully matched
 subject       Subject that has been successfully matched
 ovector       Offset vector that pcre[16|32]_exec() used
 stringcount   Value returned by pcre[16|32]_exec()
 stringname    Name of the required substring
 buffer        Buffer to receive the string
 buffersize    Size of buffer

The yield is the length of the substring, PCRE_ERROR_NOMEMORY if the buffer was too small, or PCRE_ERROR_NOSUBSTRING if the string name is invalid.

There is a complete description of the PCRE native API in the pcreapi(3) page and a description of the POSIX API in the pcreposix(3) page.


This manual page is taken from the PCRE library, which is distributed under the BSD license.