| <html> |
| <head> |
| <title>pcre2_dfa_match specification</title> |
| </head> |
| <body bgcolor="#FFFFFF" text="#00005A" link="#0066FF" alink="#3399FF" vlink="#2222BB"> |
| <h1>pcre2_dfa_match man page</h1> |
| <p> |
| Return to the <a href="index.html">PCRE2 index page</a>. |
| </p> |
| <p> |
| This page is part of the PCRE2 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. |
| <br> |
| <br><b> |
| SYNOPSIS |
| </b><br> |
| <P> |
| <b>#include <pcre2.h></b> |
| </P> |
| <P> |
| <b>int pcre2_dfa_match(const pcre2_code *<i>code</i>, PCRE2_SPTR <i>subject</i>,</b> |
| <b> PCRE2_SIZE <i>length</i>, PCRE2_SIZE <i>startoffset</i>,</b> |
| <b> uint32_t <i>options</i>, pcre2_match_data *<i>match_data</i>,</b> |
| <b> pcre2_match_context *<i>mcontext</i>,</b> |
| <b> int *<i>workspace</i>, PCRE2_SIZE <i>wscount</i>);</b> |
| </P> |
| <br><b> |
| DESCRIPTION |
| </b><br> |
| <P> |
| This function matches a compiled regular expression against a given subject |
| string, using an alternative matching algorithm that scans the subject string |
| just once (except when processing lookaround assertions). This function is |
| <i>not</i> Perl-compatible (the Perl-compatible matching function is |
| <b>pcre2_match()</b>). The arguments for this function are: |
| <pre> |
| <i>code</i> Points to the compiled pattern |
| <i>subject</i> Points to the subject string |
| <i>length</i> Length of the subject string |
| <i>startoffset</i> Offset in the subject at which to start matching |
| <i>options</i> Option bits |
| <i>match_data</i> Points to a match data block, for results |
| <i>mcontext</i> Points to a match context, or is NULL |
| <i>workspace</i> Points to a vector of ints used as working space |
| <i>wscount</i> Number of elements in the vector |
| </pre> |
| The size of output vector needed to contain all the results depends on the |
| number of simultaneous matches, not on the number of parentheses in the |
| pattern. Using <b>pcre2_match_data_create_from_pattern()</b> to create the match |
| data block is therefore not advisable when using this function. |
| </P> |
| <P> |
| A match context is needed only if you want to set up a callout function or |
| specify the heap limit or the match or the recursion depth limits. The |
| <i>length</i> and <i>startoffset</i> values are code units, not characters. The |
| options are: |
| <pre> |
| PCRE2_ANCHORED Match only at the first position |
| PCRE2_COPY_MATCHED_SUBJECT |
| On success, make a private subject copy |
| PCRE2_ENDANCHORED Pattern can match only at end of subject |
| PCRE2_NOTBOL Subject is not the beginning of a line |
| PCRE2_NOTEOL Subject is not the end of a line |
| PCRE2_NOTEMPTY An empty string is not a valid match |
| PCRE2_NOTEMPTY_ATSTART An empty string at the start of the subject is not a valid match |
| PCRE2_NO_UTF_CHECK Do not check the subject for UTF validity (only relevant if PCRE2_UTF |
| was set at compile time) |
| PCRE2_PARTIAL_HARD Return PCRE2_ERROR_PARTIAL for a partial match even if there is a full match |
| PCRE2_PARTIAL_SOFT Return PCRE2_ERROR_PARTIAL for a partial match if no full matches are found |
| PCRE2_DFA_RESTART Restart after a partial match |
| PCRE2_DFA_SHORTEST Return only the shortest match |
| </pre> |
| There are restrictions on what may appear in a pattern when using this matching |
| function. Details are given in the |
| <a href="pcre2matching.html"><b>pcre2matching</b></a> |
| documentation. For details of partial matching, see the |
| <a href="pcre2partial.html"><b>pcre2partial</b></a> |
| page. There is a complete description of the PCRE2 native API in the |
| <a href="pcre2api.html"><b>pcre2api</b></a> |
| page and a description of the POSIX API in the |
| <a href="pcre2posix.html"><b>pcre2posix</b></a> |
| page. |
| <p> |
| Return to the <a href="index.html">PCRE2 index page</a>. |
| </p> |