version 1.1.1.3, 2013/07/22 08:25:57
|
version 1.1.1.4, 2014/06/15 19:46:05
|
Line 102 study data.
|
Line 102 study data.
|
<br><a name="SEC3" href="#TOC1">RE-USING A PRECOMPILED PATTERN</a><br> |
<br><a name="SEC3" href="#TOC1">RE-USING A PRECOMPILED PATTERN</a><br> |
<P> |
<P> |
Re-using a precompiled pattern is straightforward. Having reloaded it into main |
Re-using a precompiled pattern is straightforward. Having reloaded it into main |
memory, called <b>pcre[16|32]_pattern_to_host_byte_order()</b> if necessary, | memory, called <b>pcre[16|32]_pattern_to_host_byte_order()</b> if necessary, you |
you pass its pointer to <b>pcre[16|32]_exec()</b> or <b>pcre[16|32]_dfa_exec()</b> in | pass its pointer to <b>pcre[16|32]_exec()</b> or <b>pcre[16|32]_dfa_exec()</b> in |
the usual way. |
the usual way. |
</P> |
</P> |
<P> |
<P> |
Line 119 in the
|
Line 119 in the
|
documentation. |
documentation. |
</P> |
</P> |
<P> |
<P> |
|
<b>Warning:</b> The tables that <b>pcre_exec()</b> and <b>pcre_dfa_exec()</b> use |
|
must be the same as those that were used when the pattern was compiled. If this |
|
is not the case, the behaviour is undefined. |
|
</P> |
|
<P> |
If you did not provide custom character tables when the pattern was compiled, |
If you did not provide custom character tables when the pattern was compiled, |
the pointer in the compiled pattern is NULL, which causes the matching |
the pointer in the compiled pattern is NULL, which causes the matching |
functions to use PCRE's internal tables. Thus, you do not need to take any |
functions to use PCRE's internal tables. Thus, you do not need to take any |
Line 126 special action at run time in this case.
|
Line 131 special action at run time in this case.
|
</P> |
</P> |
<P> |
<P> |
If you saved study data with the compiled pattern, you need to create your own |
If you saved study data with the compiled pattern, you need to create your own |
<b>pcre[16|32]_extra</b> data block and set the <i>study_data</i> field to point to the | <b>pcre[16|32]_extra</b> data block and set the <i>study_data</i> field to point |
reloaded study data. You must also set the PCRE_EXTRA_STUDY_DATA bit in the | to the reloaded study data. You must also set the PCRE_EXTRA_STUDY_DATA bit in |
<i>flags</i> field to indicate that study data is present. Then pass the | the <i>flags</i> field to indicate that study data is present. Then pass the |
<b>pcre[16|32]_extra</b> block to the matching function in the usual way. If the |
<b>pcre[16|32]_extra</b> block to the matching function in the usual way. If the |
pattern was studied for just-in-time optimization, that data cannot be saved, |
pattern was studied for just-in-time optimization, that data cannot be saved, |
and so is lost by a save/restore cycle. |
and so is lost by a save/restore cycle. |
Line 149 Cambridge CB2 3QH, England.
|
Line 154 Cambridge CB2 3QH, England.
|
</P> |
</P> |
<br><a name="SEC6" href="#TOC1">REVISION</a><br> |
<br><a name="SEC6" href="#TOC1">REVISION</a><br> |
<P> |
<P> |
Last updated: 24 June 2012 | Last updated: 12 November 2013 |
<br> |
<br> |
Copyright © 1997-2012 University of Cambridge. | Copyright © 1997-2013 University of Cambridge. |
<br> |
<br> |
<p> |
<p> |
Return to the <a href="index.html">PCRE index page</a>. |
Return to the <a href="index.html">PCRE index page</a>. |