# pcre_copy_substring man page

Return to the PCRE index page.

This page is part of the PCRE HTML documentation. It was generated automatically from the original man page. If there is any nonsense in it, please consult the man page, in case the conversion went wrong.
SYNOPSIS

#include <pcre.h>

int pcre_copy_substring(const char *subject, int *ovector, int stringcount, int stringnumber, char *buffer, int buffersize);

int pcre16_copy_substring(PCRE_SPTR16 subject, int *ovector, int stringcount, int stringnumber, PCRE_UCHAR16 *buffer, int buffersize);

int pcre32_copy_substring(PCRE_SPTR32 subject, int *ovector, int stringcount, int stringnumber, PCRE_UCHAR32 *buffer, int buffersize);

DESCRIPTION

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

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

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

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

Return to the PCRE index page.