pcre_utf16_to_host_byte_order (3) - Linux Manuals

pcre_utf16_to_host_byte_order: Perl-compatible regular expressions


PCRE - Perl-compatible regular expressions


#include <pcre.h>

int pcre16_utf16_to_host_byte_order(PCRE_UCHAR16 *output,
     PCRE_SPTR16 input, int length, int *host_byte_order,
     int keep_boms);


This function, which exists only in the 16-bit library, converts a UTF-16 string to the correct order for the current host, taking account of any byte order marks (BOMs) within the string. Its arguments are:

  output           pointer to output buffer, may be the same as input
  input            pointer to input buffer
  length           number of 16-bit units in the input, or negative for
                     a zero-terminated string
  host_byte_order  a NULL value or a non-zero value pointed to means
                     start in host byte order
  keep_boms        if non-zero, BOMs are copied to the output string

The result of the function is the number of 16-bit units placed into the output buffer, including the zero terminator if the string was zero-terminated.

If host_byte_order is not NULL, it is set to indicate the byte order that is current at the end of the string.

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.