pcre_fullinfo.html 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. <html>
  2. <head>
  3. <title>pcre_fullinfo specification</title>
  4. </head>
  5. <body bgcolor="#FFFFFF" text="#00005A" link="#0066FF" alink="#3399FF" vlink="#2222BB">
  6. <h1>pcre_fullinfo man page</h1>
  7. <p>
  8. Return to the <a href="index.html">PCRE index page</a>.
  9. </p>
  10. <p>
  11. This page is part of the PCRE HTML documentation. It was generated automatically
  12. from the original man page. If there is any nonsense in it, please consult the
  13. man page, in case the conversion went wrong.
  14. <br>
  15. <br><b>
  16. SYNOPSIS
  17. </b><br>
  18. <P>
  19. <b>#include &#60;pcre.h&#62;</b>
  20. </P>
  21. <P>
  22. <b>int pcre_fullinfo(const pcre *<i>code</i>, const pcre_extra *<i>extra</i>,</b>
  23. <b> int <i>what</i>, void *<i>where</i>);</b>
  24. <br>
  25. <br>
  26. <b>int pcre16_fullinfo(const pcre16 *<i>code</i>, const pcre16_extra *<i>extra</i>,</b>
  27. <b> int <i>what</i>, void *<i>where</i>);</b>
  28. <br>
  29. <br>
  30. <b>int pcre32_fullinfo(const pcre32 *<i>code</i>, const pcre32_extra *<i>extra</i>,</b>
  31. <b> int <i>what</i>, void *<i>where</i>);</b>
  32. </P>
  33. <br><b>
  34. DESCRIPTION
  35. </b><br>
  36. <P>
  37. This function returns information about a compiled pattern. Its arguments are:
  38. <pre>
  39. <i>code</i> Compiled regular expression
  40. <i>extra</i> Result of <b>pcre[16|32]_study()</b> or NULL
  41. <i>what</i> What information is required
  42. <i>where</i> Where to put the information
  43. </pre>
  44. The following information is available:
  45. <pre>
  46. PCRE_INFO_BACKREFMAX Number of highest back reference
  47. PCRE_INFO_CAPTURECOUNT Number of capturing subpatterns
  48. PCRE_INFO_DEFAULT_TABLES Pointer to default tables
  49. PCRE_INFO_FIRSTBYTE Fixed first data unit for a match, or
  50. -1 for start of string
  51. or after newline, or
  52. -2 otherwise
  53. PCRE_INFO_FIRSTTABLE Table of first data units (after studying)
  54. PCRE_INFO_HASCRORLF Return 1 if explicit CR or LF matches exist
  55. PCRE_INFO_JCHANGED Return 1 if (?J) or (?-J) was used
  56. PCRE_INFO_JIT Return 1 after successful JIT compilation
  57. PCRE_INFO_JITSIZE Size of JIT compiled code
  58. PCRE_INFO_LASTLITERAL Literal last data unit required
  59. PCRE_INFO_MINLENGTH Lower bound length of matching strings
  60. PCRE_INFO_MATCHEMPTY Return 1 if the pattern can match an empty string,
  61. 0 otherwise
  62. PCRE_INFO_MATCHLIMIT Match limit if set, otherwise PCRE_RROR_UNSET
  63. PCRE_INFO_MAXLOOKBEHIND Length (in characters) of the longest lookbehind assertion
  64. PCRE_INFO_NAMECOUNT Number of named subpatterns
  65. PCRE_INFO_NAMEENTRYSIZE Size of name table entry
  66. PCRE_INFO_NAMETABLE Pointer to name table
  67. PCRE_INFO_OKPARTIAL Return 1 if partial matching can be tried
  68. (always returns 1 after release 8.00)
  69. PCRE_INFO_OPTIONS Option bits used for compilation
  70. PCRE_INFO_SIZE Size of compiled pattern
  71. PCRE_INFO_STUDYSIZE Size of study data
  72. PCRE_INFO_FIRSTCHARACTER Fixed first data unit for a match
  73. PCRE_INFO_FIRSTCHARACTERFLAGS Returns
  74. 1 if there is a first data character set, which can
  75. then be retrieved using PCRE_INFO_FIRSTCHARACTER,
  76. 2 if the first character is at the start of the data
  77. string or after a newline, and
  78. 0 otherwise
  79. PCRE_INFO_RECURSIONLIMIT Recursion limit if set, otherwise PCRE_ERROR_UNSET
  80. PCRE_INFO_REQUIREDCHAR Literal last data unit required
  81. PCRE_INFO_REQUIREDCHARFLAGS Returns 1 if the last data character is set (which can then
  82. be retrieved using PCRE_INFO_REQUIREDCHAR); 0 otherwise
  83. </pre>
  84. The <i>where</i> argument must point to an integer variable, except for the
  85. following <i>what</i> values:
  86. <pre>
  87. PCRE_INFO_DEFAULT_TABLES const uint8_t *
  88. PCRE_INFO_FIRSTCHARACTER uint32_t
  89. PCRE_INFO_FIRSTTABLE const uint8_t *
  90. PCRE_INFO_JITSIZE size_t
  91. PCRE_INFO_MATCHLIMIT uint32_t
  92. PCRE_INFO_NAMETABLE PCRE_SPTR16 (16-bit library)
  93. PCRE_INFO_NAMETABLE PCRE_SPTR32 (32-bit library)
  94. PCRE_INFO_NAMETABLE const unsigned char * (8-bit library)
  95. PCRE_INFO_OPTIONS unsigned long int
  96. PCRE_INFO_SIZE size_t
  97. PCRE_INFO_STUDYSIZE size_t
  98. PCRE_INFO_RECURSIONLIMIT uint32_t
  99. PCRE_INFO_REQUIREDCHAR uint32_t
  100. </pre>
  101. The yield of the function is zero on success or:
  102. <pre>
  103. PCRE_ERROR_NULL the argument <i>code</i> was NULL
  104. the argument <i>where</i> was NULL
  105. PCRE_ERROR_BADMAGIC the "magic number" was not found
  106. PCRE_ERROR_BADOPTION the value of <i>what</i> was invalid
  107. PCRE_ERROR_UNSET the option was not set
  108. </PRE>
  109. </P>
  110. <P>
  111. There is a complete description of the PCRE native API in the
  112. <a href="pcreapi.html"><b>pcreapi</b></a>
  113. page and a description of the POSIX API in the
  114. <a href="pcreposix.html"><b>pcreposix</b></a>
  115. page.
  116. <p>
  117. Return to the <a href="index.html">PCRE index page</a>.
  118. </p>