• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2<html>
3<head>
4<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5<title>Function regex_match</title>
6<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css">
7<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
8<link rel="home" href="../../index.html" title="The Boost C++ Libraries BoostBook Documentation Subset">
9<link rel="up" href="../../xpressive/reference.html#header.boost.xpressive.regex_algorithms_hpp" title="Header &lt;boost/xpressive/regex_algorithms.hpp&gt;">
10<link rel="prev" href="construct.html" title="Function template construct">
11<link rel="next" href="regex_search.html" title="Function regex_search">
12</head>
13<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
14<table cellpadding="2" width="100%"><tr>
15<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
16<td align="center"><a href="../../../../index.html">Home</a></td>
17<td align="center"><a href="../../../../libs/libraries.htm">Libraries</a></td>
18<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
19<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
20<td align="center"><a href="../../../../more/index.htm">More</a></td>
21</tr></table>
22<hr>
23<div class="spirit-nav">
24<a accesskey="p" href="construct.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../xpressive/reference.html#header.boost.xpressive.regex_algorithms_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="regex_search.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
25</div>
26<div class="refentry">
27<a name="boost.xpressive.regex_match"></a><div class="titlepage"></div>
28<div class="refnamediv">
29<h2><span class="refentrytitle">Function regex_match</span></h2>
30<p>boost::xpressive::regex_match — See if a regex matches a sequence from beginning to end. </p>
31</div>
32<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
33<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../xpressive/reference.html#header.boost.xpressive.regex_algorithms_hpp" title="Header &lt;boost/xpressive/regex_algorithms.hpp&gt;">boost/xpressive/regex_algorithms.hpp</a>&gt;
34
35</span>
36<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> BidiIter<span class="special">&gt;</span>
37  <span class="keyword">bool</span> <span class="identifier">regex_match</span><span class="special">(</span><span class="identifier">BidiIter</span> begin<span class="special">,</span> <span class="identifier">BidiIter</span> end<span class="special">,</span>
38                   <a class="link" href="match_results.html" title="Struct template match_results">match_results</a><span class="special">&lt;</span> <span class="identifier">BidiIter</span> <span class="special">&gt;</span> <span class="special">&amp;</span> what<span class="special">,</span>
39                   <a class="link" href="basic_regex.html" title="Struct template basic_regex">basic_regex</a><span class="special">&lt;</span> <span class="identifier">BidiIter</span> <span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> re<span class="special">,</span>
40                   <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_flag_type</span> flags <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_default</span><span class="special">)</span><span class="special">;</span>
41<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> BidiIter<span class="special">&gt;</span>
42  <span class="keyword">bool</span> <span class="identifier">regex_match</span><span class="special">(</span><span class="identifier">BidiIter</span> begin<span class="special">,</span> <span class="identifier">BidiIter</span> end<span class="special">,</span>
43                   <a class="link" href="basic_regex.html" title="Struct template basic_regex">basic_regex</a><span class="special">&lt;</span> <span class="identifier">BidiIter</span> <span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> re<span class="special">,</span>
44                   <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_flag_type</span> flags <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_default</span><span class="special">)</span><span class="special">;</span>
45<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Char<span class="special">&gt;</span>
46  <span class="keyword">bool</span> <span class="identifier">regex_match</span><span class="special">(</span><span class="identifier">Char</span> <span class="special">*</span> begin<span class="special">,</span> <a class="link" href="match_results.html" title="Struct template match_results">match_results</a><span class="special">&lt;</span> <span class="identifier">Char</span> <span class="special">*</span> <span class="special">&gt;</span> <span class="special">&amp;</span> what<span class="special">,</span>
47                   <a class="link" href="basic_regex.html" title="Struct template basic_regex">basic_regex</a><span class="special">&lt;</span> <span class="identifier">Char</span> <span class="special">*</span> <span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> re<span class="special">,</span>
48                   <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_flag_type</span> flags <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_default</span><span class="special">)</span><span class="special">;</span>
49<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> BidiRange<span class="special">,</span> <span class="keyword">typename</span> BidiIter<span class="special">&gt;</span>
50  <span class="keyword">bool</span> <span class="identifier">regex_match</span><span class="special">(</span><span class="identifier">BidiRange</span> <span class="special">&amp;</span> rng<span class="special">,</span> <a class="link" href="match_results.html" title="Struct template match_results">match_results</a><span class="special">&lt;</span> <span class="identifier">BidiIter</span> <span class="special">&gt;</span> <span class="special">&amp;</span> what<span class="special">,</span>
51                   <a class="link" href="basic_regex.html" title="Struct template basic_regex">basic_regex</a><span class="special">&lt;</span> <span class="identifier">BidiIter</span> <span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> re<span class="special">,</span>
52                   <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_flag_type</span> flags <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_default</span><span class="special">,</span>
53                   <span class="emphasis"><em><span class="identifier">unspecified</span></em></span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span><span class="special">;</span>
54<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> BidiRange<span class="special">,</span> <span class="keyword">typename</span> BidiIter<span class="special">&gt;</span>
55  <span class="keyword">bool</span> <span class="identifier">regex_match</span><span class="special">(</span><span class="identifier">BidiRange</span> <span class="keyword">const</span> <span class="special">&amp;</span> rng<span class="special">,</span> <a class="link" href="match_results.html" title="Struct template match_results">match_results</a><span class="special">&lt;</span> <span class="identifier">BidiIter</span> <span class="special">&gt;</span> <span class="special">&amp;</span> what<span class="special">,</span>
56                   <a class="link" href="basic_regex.html" title="Struct template basic_regex">basic_regex</a><span class="special">&lt;</span> <span class="identifier">BidiIter</span> <span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> re<span class="special">,</span>
57                   <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_flag_type</span> flags <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_default</span><span class="special">,</span>
58                   <span class="emphasis"><em><span class="identifier">unspecified</span></em></span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span><span class="special">;</span>
59<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Char<span class="special">&gt;</span>
60  <span class="keyword">bool</span> <span class="identifier">regex_match</span><span class="special">(</span><span class="identifier">Char</span> <span class="special">*</span> begin<span class="special">,</span> <a class="link" href="basic_regex.html" title="Struct template basic_regex">basic_regex</a><span class="special">&lt;</span> <span class="identifier">Char</span> <span class="special">*</span> <span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> re<span class="special">,</span>
61                   <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_flag_type</span> flags <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_default</span><span class="special">)</span><span class="special">;</span>
62<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> BidiRange<span class="special">,</span> <span class="keyword">typename</span> BidiIter<span class="special">&gt;</span>
63  <span class="keyword">bool</span> <span class="identifier">regex_match</span><span class="special">(</span><span class="identifier">BidiRange</span> <span class="special">&amp;</span> rng<span class="special">,</span> <a class="link" href="basic_regex.html" title="Struct template basic_regex">basic_regex</a><span class="special">&lt;</span> <span class="identifier">BidiIter</span> <span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> re<span class="special">,</span>
64                   <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_flag_type</span> flags <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_default</span><span class="special">,</span>
65                   <span class="emphasis"><em><span class="identifier">unspecified</span></em></span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span><span class="special">;</span>
66<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> BidiRange<span class="special">,</span> <span class="keyword">typename</span> BidiIter<span class="special">&gt;</span>
67  <span class="keyword">bool</span> <span class="identifier">regex_match</span><span class="special">(</span><span class="identifier">BidiRange</span> <span class="keyword">const</span> <span class="special">&amp;</span> rng<span class="special">,</span> <a class="link" href="basic_regex.html" title="Struct template basic_regex">basic_regex</a><span class="special">&lt;</span> <span class="identifier">BidiIter</span> <span class="special">&gt;</span> <span class="keyword">const</span> <span class="special">&amp;</span> re<span class="special">,</span>
68                   <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_flag_type</span> flags <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">match_default</span><span class="special">,</span>
69                   <span class="emphasis"><em><span class="identifier">unspecified</span></em></span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span><span class="special">;</span></pre></div>
70<div class="refsect1">
71<a name="id-1.3.47.5.5.4.4"></a><h2>Description</h2>
72<p>Determines whether there is an exact match between the regular expression <code class="computeroutput">re</code>, and all of the sequence <code class="computeroutput">[begin, end)</code>.</p>
73<p>
74
75
76
77
78</p>
79<div class="variablelist"><table border="0" class="variablelist compact">
80<colgroup>
81<col align="left" valign="top">
82<col>
83</colgroup>
84<tbody>
85<tr>
86<td><p><span class="term">Parameters:</span></p></td>
87<td><div class="variablelist"><table border="0" class="variablelist compact">
88<colgroup>
89<col align="left" valign="top">
90<col>
91</colgroup>
92<tbody>
93<tr>
94<td><p><span class="term"><code class="computeroutput">begin</code></span></p></td>
95<td><p>The beginning of the sequence. </p></td>
96</tr>
97<tr>
98<td><p><span class="term"><code class="computeroutput">end</code></span></p></td>
99<td><p>The end of the sequence. </p></td>
100</tr>
101<tr>
102<td><p><span class="term"><code class="computeroutput">flags</code></span></p></td>
103<td><p>Optional match flags, used to control how the expression is matched against the sequence. (See <code class="computeroutput">match_flag_type</code>.) </p></td>
104</tr>
105<tr>
106<td><p><span class="term"><code class="computeroutput">re</code></span></p></td>
107<td><p>The regular expression object to use </p></td>
108</tr>
109<tr>
110<td><p><span class="term"><code class="computeroutput">what</code></span></p></td>
111<td><p>The <code class="computeroutput"><code class="computeroutput"><a class="link" href="match_results.html" title="Struct template match_results">match_results</a></code></code> struct into which the sub_matches will be written </p></td>
112</tr>
113</tbody>
114</table></div></td>
115</tr>
116<tr>
117<td><p><span class="term">Requires:</span></p></td>
118<td><p>Type <code class="computeroutput">BidiIter</code> meets the requirements of a Bidirectional Iterator (24.1.4). </p></td>
119</tr>
120<tr>
121<td><p><span class="term">Requires:</span></p></td>
122<td><p><code class="computeroutput">[begin,end)</code> denotes a valid iterator range. </p></td>
123</tr>
124<tr>
125<td><p><span class="term">Returns:</span></p></td>
126<td><p><code class="computeroutput">true</code> if a match is found, <code class="computeroutput">false</code> otherwise </p></td>
127</tr>
128<tr>
129<td><p><span class="term">Throws:</span></p></td>
130<td>
131<a class="link" href="regex_error.html" title="Struct regex_error">regex_error</a> on stack exhaustion </td>
132</tr>
133</tbody>
134</table></div>
135</div>
136</div>
137<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
138<td align="left"></td>
139<td align="right"><div class="copyright-footer">Copyright © 2007 Eric Niebler<p>
140        Distributed under the Boost Software License, Version 1.0. (See accompanying
141        file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
142      </p>
143</div></td>
144</tr></table>
145<hr>
146<div class="spirit-nav">
147<a accesskey="p" href="construct.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../xpressive/reference.html#header.boost.xpressive.regex_algorithms_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="regex_search.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
148</div>
149</body>
150</html>
151