1<html> 2<head> 3<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 4<title>basic_regex</title> 5<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css"> 6<meta name="generator" content="DocBook XSL Stylesheets V1.79.1"> 7<link rel="home" href="../../index.html" title="Boost.Regex 5.1.4"> 8<link rel="up" href="../ref.html" title="Reference"> 9<link rel="prev" href="../ref.html" title="Reference"> 10<link rel="next" href="match_results.html" title="match_results"> 11</head> 12<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> 13<table cellpadding="2" width="100%"><tr> 14<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td> 15<td align="center"><a href="../../../../../../index.html">Home</a></td> 16<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td> 17<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td> 18<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td> 19<td align="center"><a href="../../../../../../more/index.htm">More</a></td> 20</tr></table> 21<hr> 22<div class="spirit-nav"> 23<a accesskey="p" href="../ref.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ref.html"><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="match_results.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a> 24</div> 25<div class="section"> 26<div class="titlepage"><div><div><h3 class="title"> 27<a name="boost_regex.ref.basic_regex"></a><a class="link" href="basic_regex.html" title="basic_regex">basic_regex</a> 28</h3></div></div></div> 29<h5> 30<a name="boost_regex.ref.basic_regex.h0"></a> 31 <span class="phrase"><a name="boost_regex.ref.basic_regex.synopsis"></a></span><a class="link" href="basic_regex.html#boost_regex.ref.basic_regex.synopsis">Synopsis</a> 32 </h5> 33<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">regex</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span> 34</pre> 35<p> 36 The template class <code class="computeroutput"><span class="identifier">basic_regex</span></code> 37 encapsulates regular expression parsing and compilation. The class takes 38 two template parameters: 39 </p> 40<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 41<li class="listitem"> 42 <code class="computeroutput"><span class="identifier">charT</span></code>: determines the 43 character type, i.e. either <code class="computeroutput"><span class="keyword">char</span></code> 44 or <code class="computeroutput"><span class="keyword">wchar_t</span></code>; see <a class="link" href="concepts/charT_concept.html" title="charT Requirements">charT 45 concept</a>. 46 </li> 47<li class="listitem"> 48 <code class="computeroutput"><span class="identifier">traits</span></code>: determines the 49 behavior of the character type, for example which character class names 50 are recognized. A default traits class is provided: <code class="computeroutput"><span class="identifier">regex_traits</span><span class="special"><</span><span class="identifier">charT</span><span class="special">></span></code>. See also <a class="link" href="concepts/traits_concept.html" title="Traits Class Requirements">traits 51 concept</a>. 52 </li> 53</ul></div> 54<p> 55 For ease of use there are two typedefs that define the two standard <code class="computeroutput"><span class="identifier">basic_regex</span></code> instances, unless you want 56 to use custom traits classes or non-standard character types (for example 57 see <a class="link" href="non_std_strings/icu.html" title="Working With Unicode and ICU String Types">unicode support</a>), 58 you won't need to use anything other than these: 59 </p> 60<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span> 61 62<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span> <span class="special">=</span> <span class="identifier">regex_traits</span><span class="special"><</span><span class="identifier">charT</span><span class="special">></span> <span class="special">></span> 63<span class="keyword">class</span> <span class="identifier">basic_regex</span><span class="special">;</span> 64 65<span class="keyword">typedef</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="keyword">char</span><span class="special">></span> <span class="identifier">regex</span><span class="special">;</span> 66<span class="keyword">typedef</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="keyword">wchar_t</span><span class="special">></span> <span class="identifier">wregex</span><span class="special">;</span> 67 68<span class="special">}</span> 69</pre> 70<p> 71 The definition of <code class="computeroutput"><span class="identifier">basic_regex</span></code> 72 follows: it is based very closely on class <code class="computeroutput"><span class="identifier">basic_string</span></code>, 73 and fulfils the requirements for a constant-container of <code class="computeroutput"><span class="identifier">charT</span></code>. 74 </p> 75<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span> 76 77<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span> <span class="special">=</span> <span class="identifier">regex_traits</span><span class="special"><</span><span class="identifier">charT</span><span class="special">></span> <span class="special">></span> 78<span class="keyword">class</span> <span class="identifier">basic_regex</span> <span class="special">{</span> 79 <span class="keyword">public</span><span class="special">:</span> 80 <span class="comment">// types:</span> 81 <span class="keyword">typedef</span> <span class="identifier">charT</span> <span class="identifier">value_type</span><span class="special">;</span> 82 <span class="keyword">typedef</span> <span class="identifier">implementation</span><span class="special">-</span><span class="identifier">specific</span> <span class="identifier">const_iterator</span><span class="special">;</span> 83 <span class="keyword">typedef</span> <span class="identifier">const_iterator</span> <span class="identifier">iterator</span><span class="special">;</span> 84 <span class="keyword">typedef</span> <span class="identifier">charT</span><span class="special">&</span> <span class="identifier">reference</span><span class="special">;</span> 85 <span class="keyword">typedef</span> <span class="keyword">const</span> <span class="identifier">charT</span><span class="special">&</span> <span class="identifier">const_reference</span><span class="special">;</span> 86 <span class="keyword">typedef</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">ptrdiff_t</span> <span class="identifier">difference_type</span><span class="special">;</span> 87 <span class="keyword">typedef</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">size_type</span><span class="special">;</span> 88 <span class="keyword">typedef</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">flag_type</span><span class="special">;</span> 89 <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">traits</span><span class="special">::</span><span class="identifier">locale_type</span> <span class="identifier">locale_type</span><span class="special">;</span> 90 91 <span class="comment">// constants:</span> 92 <span class="comment">// main option selection:</span> 93 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">normal</span> 94 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">;</span> 95 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">ECMAScript</span> 96 <span class="special">=</span> <span class="identifier">normal</span><span class="special">;</span> 97 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">JavaScript</span> 98 <span class="special">=</span> <span class="identifier">normal</span><span class="special">;</span> 99 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">JScript</span> 100 <span class="special">=</span> <span class="identifier">normal</span><span class="special">;</span> 101 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">basic</span> 102 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">basic</span><span class="special">;</span> 103 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">extended</span> 104 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">extended</span><span class="special">;</span> 105 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">awk</span> 106 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">awk</span><span class="special">;</span> 107 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">grep</span> 108 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">grep</span><span class="special">;</span> 109 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">egrep</span> 110 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">egrep</span><span class="special">;</span> 111 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">sed</span> 112 <span class="special">=</span> <span class="identifier">basic</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">sed</span><span class="special">;</span> 113 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">perl</span> 114 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">perl</span><span class="special">;</span> 115 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">literal</span> 116 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">literal</span><span class="special">;</span> 117 118 <span class="comment">// modifiers specific to perl expressions:</span> 119 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">no_mod_m</span> 120 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">no_mod_m</span><span class="special">;</span> 121 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">no_mod_s</span> 122 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">no_mod_s</span><span class="special">;</span> 123 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">mod_s</span> 124 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">mod_s</span><span class="special">;</span> 125 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">mod_x</span> 126 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">mod_x</span><span class="special">;</span> 127 128 <span class="comment">// modifiers specific to POSIX basic expressions:</span> 129 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">bk_plus_qm</span> 130 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">bk_plus_qm</span><span class="special">;</span> 131 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">bk_vbar</span> 132 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">bk_vbar</span> 133 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">no_char_classes</span> 134 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">no_char_classes</span> 135 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">no_intervals</span> 136 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">no_intervals</span> 137 138 <span class="comment">// common modifiers:</span> 139 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">nosubs</span> 140 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">nosubs</span><span class="special">;</span> 141 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">optimize</span> 142 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">optimize</span><span class="special">;</span> 143 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">collate</span> 144 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">collate</span><span class="special">;</span> 145 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">newline_alt</span> 146 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">newline_alt</span><span class="special">;</span> 147 <span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">no_except</span> 148 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">newline_alt</span><span class="special">;</span> 149 150 <span class="comment">// construct/copy/destroy:</span> 151 <span class="keyword">explicit</span> <a class="link" href="basic_regex.html#boost_regex.basic_regex.construct1">basic_regex</a> <span class="special">();</span> 152 <span class="keyword">explicit</span> <a class="link" href="basic_regex.html#boost_regex.basic_regex.construct2">basic_regex</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span> <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span> 153 <a class="link" href="basic_regex.html#boost_regex.basic_regex.construct3">basic_regex</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p2</span><span class="special">,</span> 154 <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span> 155 <a class="link" href="basic_regex.html#boost_regex.basic_regex.construct4">basic_regex</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span> <span class="identifier">size_type</span> <span class="identifier">len</span><span class="special">,</span> <span class="identifier">flag_type</span> <span class="identifier">f</span><span class="special">);</span> 156 <a class="link" href="basic_regex.html#boost_regex.basic_regex.construct5">basic_regex</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&);</span> 157 158 <span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">ST</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SA</span><span class="special">></span> 159 <span class="keyword">explicit</span> <a class="link" href="basic_regex.html#boost_regex.basic_regex.construct6">basic_regex</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">>&</span> <span class="identifier">p</span><span class="special">,</span> 160 <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span> 161 162 <span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">InputIterator</span><span class="special">></span> 163 <a class="link" href="basic_regex.html#boost_regex.basic_regex.construct7">basic_regex</a><span class="special">(</span><span class="identifier">InputIterator</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">InputIterator</span> <span class="identifier">last</span><span class="special">,</span> 164 <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span> 165 166 <span class="special">~</span><span class="identifier">basic_regex</span><span class="special">();</span> 167 <a class="link" href="basic_regex.html#boost_regex.basic_regex.opeq1">basic_regex& operator=</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&);</span> 168 <a class="link" href="basic_regex.html#boost_regex.basic_regex.opeq2">basic_regex& operator=</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">ptr</span><span class="special">);</span> 169 170 <span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">ST</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SA</span><span class="special">></span> 171 <a class="link" href="basic_regex.html#boost_regex.basic_regex.opeq3">basic_regex& operator=</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">>&</span> <span class="identifier">p</span><span class="special">);</span> 172 <span class="comment">// iterators: </span> 173 <a class="link" href="basic_regex.html#boost_regex.basic_regex.subexpression">std::pair<const_iterator, const_iterator> subexpression</a><span class="special">(</span><span class="identifier">size_type</span> <span class="identifier">n</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> 174 <a class="link" href="basic_regex.html#boost_regex.basic_regex.begin">const_iterator begin</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span> 175 <a class="link" href="basic_regex.html#boost_regex.basic_regex.end">const_iterator end</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span> 176 <span class="comment">// capacity: </span> 177 <a class="link" href="basic_regex.html#boost_regex.basic_regex.size">size_type size</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span> 178 <a class="link" href="basic_regex.html#boost_regex.basic_regex.max_size">size_type max_size</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span> 179 <a class="link" href="basic_regex.html#boost_regex.basic_regex.empty">bool empty</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span> 180 <a class="link" href="basic_regex.html#boost_regex.basic_regex.mark_count">size_type mark_count</a><span class="special">()</span><span class="keyword">const</span><span class="special">;</span> 181 <span class="comment">//</span> 182 <span class="comment">// modifiers: </span> 183 <a class="link" href="basic_regex.html#boost_regex.basic_regex.assign1">basic_regex& assign</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&</span> <span class="identifier">that</span><span class="special">);</span> 184 <a class="link" href="basic_regex.html#boost_regex.basic_regex.assign2">basic_regex& assign</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">ptr</span><span class="special">,</span> 185 <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span> 186 <a class="link" href="basic_regex.html#boost_regex.basic_regex.assign3">basic_regex& assign</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">ptr</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">len</span><span class="special">,</span> <span class="identifier">flag_type</span> <span class="identifier">f</span><span class="special">);</span> 187 188 <span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">string_traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">A</span><span class="special">></span> 189 <a class="link" href="basic_regex.html#boost_regex.basic_regex.assign4">basic_regex& assign</a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">string_traits</span><span class="special">,</span> <span class="identifier">A</span><span class="special">>&</span> <span class="identifier">s</span><span class="special">,</span> 190 <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span> 191 192 <span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">InputIterator</span><span class="special">></span> 193 <a class="link" href="basic_regex.html#boost_regex.basic_regex.assign5">basic_regex& assign</a><span class="special">(</span><span class="identifier">InputIterator</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">InputIterator</span> <span class="identifier">last</span><span class="special">,</span> 194 <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span> 195 196 <span class="comment">// const operations:</span> 197 <a class="link" href="basic_regex.html#boost_regex.basic_regex.flags">flag_type flags</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span> 198 <a class="link" href="basic_regex.html#boost_regex.basic_regex.status">int status</a><span class="special">()</span><span class="keyword">const</span><span class="special">;</span> 199 <a class="link" href="basic_regex.html#boost_regex.basic_regex.str">basic_string<charT> str</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span> 200 <a class="link" href="basic_regex.html#boost_regex.basic_regex.compare">int compare</a><span class="special">(</span><span class="identifier">basic_regex</span><span class="special">&)</span> <span class="keyword">const</span><span class="special">;</span> 201 <span class="comment">// locale:</span> 202 <a class="link" href="basic_regex.html#boost_regex.basic_regex.imbue">locale_type imbue</a><span class="special">(</span><span class="identifier">locale_type</span> <span class="identifier">loc</span><span class="special">);</span> 203 <a class="link" href="basic_regex.html#boost_regex.basic_regex.getloc">locale_type getloc</a><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span> 204 <span class="comment">// swap</span> 205 <a class="link" href="basic_regex.html#boost_regex.basic_regex.swap">void swap</a><span class="special">(</span><span class="identifier">basic_regex</span><span class="special">&)</span> <span class="keyword">throw</span><span class="special">();</span> 206<span class="special">};</span> 207 208<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">></span> 209<a class="link" href="basic_regex.html#boost_regex.basic_regex.op_eq">bool operator ==</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">lhs</span><span class="special">,</span> 210 <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">rhs</span><span class="special">);</span> 211 212<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">></span> 213<a class="link" href="basic_regex.html#boost_regex.basic_regex.op_ne">bool operator !=</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">lhs</span><span class="special">,</span> 214 <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">rhs</span><span class="special">);</span> 215 216<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">></span> 217<a class="link" href="basic_regex.html#boost_regex.basic_regex.op_lt">bool operator <</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">lhs</span><span class="special">,</span> 218 <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">rhs</span><span class="special">);</span> 219 220<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">></span> 221<a class="link" href="basic_regex.html#boost_regex.basic_regex.op_le">bool operator <=</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">lhs</span><span class="special">,</span> 222 <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">rhs</span><span class="special">);</span> 223 224<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">></span> 225<a class="link" href="basic_regex.html#boost_regex.basic_regex.op_ge">bool operator >=</a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">lhs</span><span class="special">,</span> 226 <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">rhs</span><span class="special">);</span> 227 228<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">></span> 229<a class="link" href="basic_regex.html#boost_regex.basic_regex.op_gt">bool operator ></a> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">lhs</span><span class="special">,</span> 230 <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">rhs</span><span class="special">);</span> 231 232<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">io_traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">re_traits</span><span class="special">></span> 233<span class="identifier">basic_ostream</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">io_traits</span><span class="special">>&</span> 234 <a class="link" href="basic_regex.html#boost_regex.basic_regex.op_stream">operator <<</a> <span class="special">(</span><span class="identifier">basic_ostream</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">io_traits</span><span class="special">>&</span> <span class="identifier">os</span><span class="special">,</span> 235 <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">re_traits</span><span class="special">>&</span> <span class="identifier">e</span><span class="special">);</span> 236 237<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">></span> 238<a class="link" href="basic_regex.html#boost_regex.basic_regex.op_swap">void swap</a><span class="special">(</span><span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">e1</span><span class="special">,</span> 239 <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">e2</span><span class="special">);</span> 240 241<span class="keyword">typedef</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="keyword">char</span><span class="special">></span> <span class="identifier">regex</span><span class="special">;</span> 242<span class="keyword">typedef</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="keyword">wchar_t</span><span class="special">></span> <span class="identifier">wregex</span><span class="special">;</span> 243 244<span class="special">}</span> <span class="comment">// namespace boost</span> 245</pre> 246<h5> 247<a name="boost_regex.ref.basic_regex.h1"></a> 248 <span class="phrase"><a name="boost_regex.ref.basic_regex.description"></a></span><a class="link" href="basic_regex.html#boost_regex.ref.basic_regex.description">Description</a> 249 </h5> 250<p> 251 Class <code class="computeroutput"><span class="identifier">basic_regex</span></code> has the 252 following public members: 253 </p> 254<pre class="programlisting"><span class="comment">// main option selection:</span> 255<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">normal</span> 256 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">;</span> 257<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">ECMAScript</span> 258 <span class="special">=</span> <span class="identifier">normal</span><span class="special">;</span> 259<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">JavaScript</span> 260 <span class="special">=</span> <span class="identifier">normal</span><span class="special">;</span> 261<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">JScript</span> 262 <span class="special">=</span> <span class="identifier">normal</span><span class="special">;</span> 263<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">basic</span> 264 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">basic</span><span class="special">;</span> 265<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">extended</span> 266 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">extended</span><span class="special">;</span> 267<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">awk</span> 268 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">awk</span><span class="special">;</span> 269<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">grep</span> 270 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">grep</span><span class="special">;</span> 271<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">egrep</span> 272 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">egrep</span><span class="special">;</span> 273<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">sed</span> 274 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">sed</span><span class="special">;</span> 275<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">perl</span> 276 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">perl</span><span class="special">;</span> 277<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">literal</span> 278 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">literal</span><span class="special">;</span> 279 280<span class="comment">// modifiers specific to perl expressions:</span> 281<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">no_mod_m</span> 282 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">no_mod_m</span><span class="special">;</span> 283<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">no_mod_s</span> 284 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">no_mod_s</span><span class="special">;</span> 285<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">mod_s</span> 286 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">mod_s</span><span class="special">;</span> 287<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">mod_x</span> 288 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">mod_x</span><span class="special">;</span> 289 290<span class="comment">// modifiers specific to POSIX basic expressions:</span> 291<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">bk_plus_qm</span> 292 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">bk_plus_qm</span><span class="special">;</span> 293<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">bk_vbar</span> 294 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">bk_vbar</span> 295<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">no_char_classes</span> 296 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">no_char_classes</span> 297<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">no_intervals</span> 298 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">no_intervals</span> 299 300<span class="comment">// common modifiers:</span> 301<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">nosubs</span> 302 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">nosubs</span><span class="special">;</span> 303<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">optimize</span> 304 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">optimize</span><span class="special">;</span> 305<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">collate</span> 306 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">collate</span><span class="special">;</span> 307<span class="keyword">static</span> <span class="keyword">const</span> <span class="identifier">regex_constants</span><span class="special">::</span> <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> <span class="identifier">newline_alt</span> 308 <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">newline_alt</span><span class="special">;</span> 309</pre> 310<p> 311 The meaning of these options is documented in the <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> section. 312 </p> 313<p> 314 The static constant members are provided as synonyms for the constants declared 315 in namespace <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span></code>; for each constant of type 316 <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> 317 declared in namespace <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">regex_constants</span></code> 318 then a constant with the same name, type and value is declared within the 319 scope of basic_regex. 320 </p> 321<a name="boost_regex.basic_regex.construct1"></a><pre class="programlisting"><span class="identifier">basic_regex</span><span class="special">();</span> 322</pre> 323<p> 324 <span class="bold"><strong>Effects</strong></span>: Constructs an object of class 325 <code class="computeroutput"><span class="identifier">basic_regex</span></code>. 326 </p> 327<div class="table"> 328<a name="boost_regex.ref.basic_regex.basic_regex_default_construction"></a><p class="title"><b>Table 1. basic_regex default construction postconditions</b></p> 329<div class="table-contents"><table class="table" summary="basic_regex default construction postconditions"> 330<colgroup> 331<col> 332<col> 333</colgroup> 334<thead><tr> 335<th> 336 <p> 337 Element 338 </p> 339 </th> 340<th> 341 <p> 342 Value 343 </p> 344 </th> 345</tr></thead> 346<tbody> 347<tr> 348<td> 349 <p> 350 <code class="computeroutput"><span class="identifier">empty</span><span class="special">()</span></code> 351 </p> 352 </td> 353<td> 354 <p> 355 <code class="computeroutput"><span class="keyword">true</span></code> 356 </p> 357 </td> 358</tr> 359<tr> 360<td> 361 <p> 362 <code class="computeroutput"><span class="identifier">size</span><span class="special">()</span></code> 363 </p> 364 </td> 365<td> 366 <p> 367 <code class="computeroutput"><span class="number">0</span></code> 368 </p> 369 </td> 370</tr> 371<tr> 372<td> 373 <p> 374 <code class="computeroutput"><span class="identifier">str</span><span class="special">()</span></code> 375 </p> 376 </td> 377<td> 378 <p> 379 <code class="computeroutput"><span class="identifier">basic_string</span><span class="special"><</span><span class="identifier">charT</span><span class="special">>()</span></code> 380 </p> 381 </td> 382</tr> 383</tbody> 384</table></div> 385</div> 386<br class="table-break"><a name="boost_regex.basic_regex.construct2"></a><pre class="programlisting"><span class="identifier">basic_regex</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span> <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span> 387</pre> 388<p> 389 <span class="bold"><strong>Requires</strong></span>: <span class="emphasis"><em>p</em></span> shall not 390 be a null pointer. 391 </p> 392<p> 393 <span class="bold"><strong>Throws</strong></span>: <a class="link" href="bad_expression.html" title="bad_expression"><code class="computeroutput"><span class="identifier">bad_expression</span></code></a> if <span class="emphasis"><em>p</em></span> 394 is not a valid regular expression, unless the flag <code class="computeroutput"><span class="identifier">no_except</span></code> 395 is set in <span class="emphasis"><em>f</em></span>. 396 </p> 397<p> 398 <span class="bold"><strong>Effects</strong></span>: Constructs an object of class 399 <a class="link" href="basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>; 400 the object's internal finite state machine is constructed from the regular 401 expression contained in the null-terminated string <span class="emphasis"><em>p</em></span>, 402 and interpreted according to the <a class="link" href="syntax_option_type.html" title="syntax_option_type">option 403 flags</a> specified in <span class="emphasis"><em>f</em></span>. 404 </p> 405<div class="table"> 406<a name="boost_regex.ref.basic_regex.postconditions_for_basic_regex_c"></a><p class="title"><b>Table 2. Postconditions for basic_regex construction</b></p> 407<div class="table-contents"><table class="table" summary="Postconditions for basic_regex construction"> 408<colgroup> 409<col> 410<col> 411</colgroup> 412<thead><tr> 413<th> 414 <p> 415 Element 416 </p> 417 </th> 418<th> 419 <p> 420 Value 421 </p> 422 </th> 423</tr></thead> 424<tbody> 425<tr> 426<td> 427 <p> 428 <code class="computeroutput"><span class="identifier">empty</span><span class="special">()</span></code> 429 </p> 430 </td> 431<td> 432 <p> 433 <code class="computeroutput"><span class="keyword">false</span></code> 434 </p> 435 </td> 436</tr> 437<tr> 438<td> 439 <p> 440 <code class="computeroutput"><span class="identifier">size</span><span class="special">()</span></code> 441 </p> 442 </td> 443<td> 444 <p> 445 <code class="computeroutput"><span class="identifier">char_traits</span><span class="special"><</span><span class="identifier">charT</span><span class="special">>::</span><span class="identifier">length</span><span class="special">(</span><span class="identifier">p</span><span class="special">)</span></code> 446 </p> 447 </td> 448</tr> 449<tr> 450<td> 451 <p> 452 <code class="computeroutput"><span class="identifier">str</span><span class="special">()</span></code> 453 </p> 454 </td> 455<td> 456 <p> 457 <code class="computeroutput"><span class="identifier">basic_string</span><span class="special"><</span><span class="identifier">charT</span><span class="special">>(</span><span class="identifier">p</span><span class="special">)</span></code> 458 </p> 459 </td> 460</tr> 461<tr> 462<td> 463 <p> 464 <code class="computeroutput"><span class="identifier">flags</span><span class="special">()</span></code> 465 </p> 466 </td> 467<td> 468 <p> 469 <span class="emphasis"><em>f</em></span> 470 </p> 471 </td> 472</tr> 473<tr> 474<td> 475 <p> 476 <code class="computeroutput"><span class="identifier">mark_count</span><span class="special">()</span></code> 477 </p> 478 </td> 479<td> 480 <p> 481 The number of marked sub-expressions within the expression. 482 </p> 483 </td> 484</tr> 485</tbody> 486</table></div> 487</div> 488<br class="table-break"><a name="boost_regex.basic_regex.construct3"></a><pre class="programlisting"><span class="identifier">basic_regex</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p1</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p2</span><span class="special">,</span> 489 <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span> 490</pre> 491<p> 492 <span class="bold"><strong>Requires</strong></span>: <span class="emphasis"><em>p1</em></span> and <span class="emphasis"><em>p2</em></span> 493 are not null pointers, <code class="computeroutput"><span class="identifier">p1</span> <span class="special"><</span> <span class="identifier">p2</span></code>. 494 </p> 495<p> 496 <span class="bold"><strong>Throws</strong></span>: bad_expression if [p1,p2) is not 497 a valid regular expression, unless the flag <code class="computeroutput"><span class="identifier">no_except</span></code> 498 is set in <span class="emphasis"><em>f</em></span>. 499 </p> 500<p> 501 <span class="bold"><strong>Effects</strong></span>: Constructs an object of class 502 <a class="link" href="basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>; 503 the object's internal finite state machine is constructed from the regular 504 expression contained in the sequence of characters [p1,p2), and interpreted 505 according the <a class="link" href="syntax_option_type.html" title="syntax_option_type">option flags</a> 506 specified in <span class="emphasis"><em>f</em></span>. 507 </p> 508<div class="table"> 509<a name="boost_regex.ref.basic_regex.postconditions_for_basic_regex_0"></a><p class="title"><b>Table 3. Postconditions for basic_regex construction</b></p> 510<div class="table-contents"><table class="table" summary="Postconditions for basic_regex construction"> 511<colgroup> 512<col> 513<col> 514</colgroup> 515<thead><tr> 516<th> 517 <p> 518 Element 519 </p> 520 </th> 521<th> 522 <p> 523 Value 524 </p> 525 </th> 526</tr></thead> 527<tbody> 528<tr> 529<td> 530 <p> 531 <code class="computeroutput"><span class="identifier">empty</span><span class="special">()</span></code> 532 </p> 533 </td> 534<td> 535 <p> 536 <code class="computeroutput"><span class="keyword">false</span></code> 537 </p> 538 </td> 539</tr> 540<tr> 541<td> 542 <p> 543 <code class="computeroutput"><span class="identifier">size</span><span class="special">()</span></code> 544 </p> 545 </td> 546<td> 547 <p> 548 <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">distance</span><span class="special">(</span><span class="identifier">p1</span><span class="special">,</span><span class="identifier">p2</span><span class="special">)</span></code> 549 </p> 550 </td> 551</tr> 552<tr> 553<td> 554 <p> 555 <code class="computeroutput"><span class="identifier">str</span><span class="special">()</span></code> 556 </p> 557 </td> 558<td> 559 <p> 560 <code class="computeroutput"><span class="identifier">basic_string</span><span class="special"><</span><span class="identifier">charT</span><span class="special">>(</span><span class="identifier">p1</span><span class="special">,</span><span class="identifier">p2</span><span class="special">)</span></code> 561 </p> 562 </td> 563</tr> 564<tr> 565<td> 566 <p> 567 <code class="computeroutput"><span class="identifier">flags</span><span class="special">()</span></code> 568 </p> 569 </td> 570<td> 571 <p> 572 <span class="emphasis"><em>f</em></span> 573 </p> 574 </td> 575</tr> 576<tr> 577<td> 578 <p> 579 <code class="computeroutput"><span class="identifier">mark_count</span><span class="special">()</span></code> 580 </p> 581 </td> 582<td> 583 <p> 584 The number of marked sub-expressions within the expression. 585 </p> 586 </td> 587</tr> 588</tbody> 589</table></div> 590</div> 591<br class="table-break"><a name="boost_regex.basic_regex.construct4"></a><pre class="programlisting"><span class="identifier">basic_regex</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">p</span><span class="special">,</span> <span class="identifier">size_type</span> <span class="identifier">len</span><span class="special">,</span> <span class="identifier">flag_type</span> <span class="identifier">f</span><span class="special">);</span> 592</pre> 593<p> 594 <span class="bold"><strong>Requires</strong></span>: <span class="emphasis"><em>p</em></span> shall not 595 be a null pointer, <code class="computeroutput"><span class="identifier">len</span> <span class="special"><</span> 596 <span class="identifier">max_size</span><span class="special">()</span></code>. 597 </p> 598<p> 599 <span class="bold"><strong>Throws</strong></span>: <a class="link" href="bad_expression.html" title="bad_expression"><code class="computeroutput"><span class="identifier">bad_expression</span></code></a> if <span class="emphasis"><em>p</em></span> 600 is not a valid regular expression, unless the flag <code class="computeroutput"><span class="identifier">no_except</span></code> 601 is set in <span class="emphasis"><em>f</em></span>. 602 </p> 603<p> 604 <span class="bold"><strong>Effects</strong></span>: Constructs an object of class 605 <a class="link" href="basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>; 606 the object's internal finite state machine is constructed from the regular 607 expression contained in the sequence of characters [p, p+len), and interpreted 608 according the option flags specified in <span class="emphasis"><em>f</em></span>. 609 </p> 610<div class="table"> 611<a name="boost_regex.ref.basic_regex.postconditions_for_basic_regex_1"></a><p class="title"><b>Table 4. Postconditions for basic_regex construction</b></p> 612<div class="table-contents"><table class="table" summary="Postconditions for basic_regex construction"> 613<colgroup> 614<col> 615<col> 616</colgroup> 617<thead><tr> 618<th> 619 <p> 620 Element 621 </p> 622 </th> 623<th> 624 <p> 625 Value 626 </p> 627 </th> 628</tr></thead> 629<tbody> 630<tr> 631<td> 632 <p> 633 <code class="computeroutput"><span class="identifier">empty</span><span class="special">()</span></code> 634 </p> 635 </td> 636<td> 637 <p> 638 <code class="computeroutput"><span class="keyword">false</span></code> 639 </p> 640 </td> 641</tr> 642<tr> 643<td> 644 <p> 645 <code class="computeroutput"><span class="identifier">size</span><span class="special">()</span></code> 646 </p> 647 </td> 648<td> 649 <p> 650 <span class="emphasis"><em>len</em></span> 651 </p> 652 </td> 653</tr> 654<tr> 655<td> 656 <p> 657 <code class="computeroutput"><span class="identifier">str</span><span class="special">()</span></code> 658 </p> 659 </td> 660<td> 661 <p> 662 <code class="computeroutput"><span class="identifier">basic_string</span><span class="special"><</span><span class="identifier">charT</span><span class="special">>(</span><span class="identifier">p</span><span class="special">,</span> 663 <span class="identifier">len</span><span class="special">)</span></code> 664 </p> 665 </td> 666</tr> 667<tr> 668<td> 669 <p> 670 <code class="computeroutput"><span class="identifier">flags</span><span class="special">()</span></code> 671 </p> 672 </td> 673<td> 674 <p> 675 <span class="emphasis"><em>f</em></span> 676 </p> 677 </td> 678</tr> 679<tr> 680<td> 681 <p> 682 <code class="computeroutput"><span class="identifier">mark_count</span><span class="special">()</span></code> 683 </p> 684 </td> 685<td> 686 <p> 687 The number of marked sub-expressions within the expression. 688 </p> 689 </td> 690</tr> 691</tbody> 692</table></div> 693</div> 694<br class="table-break"><a name="boost_regex.basic_regex.construct5"></a><pre class="programlisting"><span class="identifier">basic_regex</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&</span> <span class="identifier">e</span><span class="special">);</span> 695</pre> 696<p> 697 <span class="bold"><strong>Effects</strong></span>: Constructs an object of class 698 <a class="link" href="basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a> 699 as a copy of the object <span class="emphasis"><em>e</em></span>. 700 </p> 701<a name="boost_regex.basic_regex.construct6"></a><pre class="programlisting"><span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">ST</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SA</span><span class="special">></span> 702<span class="identifier">basic_regex</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">>&</span> <span class="identifier">s</span><span class="special">,</span> 703 <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span> 704</pre> 705<p> 706 <span class="bold"><strong>Throws</strong></span>: <a class="link" href="bad_expression.html" title="bad_expression"><code class="computeroutput"><span class="identifier">bad_expression</span></code></a> if <span class="emphasis"><em>s</em></span> 707 is not a valid regular expression, unless the flag <code class="computeroutput"><span class="identifier">no_except</span></code> 708 is set in <span class="emphasis"><em>f</em></span>. 709 </p> 710<p> 711 <span class="bold"><strong>Effects</strong></span>: Constructs an object of class 712 <a class="link" href="basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>; 713 the object's internal finite state machine is constructed from the regular 714 expression contained in the string <span class="emphasis"><em>s</em></span>, and interpreted 715 according to the <a class="link" href="syntax_option_type.html" title="syntax_option_type">option 716 flags</a> specified in <span class="emphasis"><em>f</em></span>. 717 </p> 718<div class="table"> 719<a name="boost_regex.ref.basic_regex.postconditions_for_basic_regex_2"></a><p class="title"><b>Table 5. Postconditions for basic_regex construction</b></p> 720<div class="table-contents"><table class="table" summary="Postconditions for basic_regex construction"> 721<colgroup> 722<col> 723<col> 724</colgroup> 725<thead><tr> 726<th> 727 <p> 728 Element 729 </p> 730 </th> 731<th> 732 <p> 733 Value 734 </p> 735 </th> 736</tr></thead> 737<tbody> 738<tr> 739<td> 740 <p> 741 <code class="computeroutput"><span class="identifier">empty</span><span class="special">()</span></code> 742 </p> 743 </td> 744<td> 745 <p> 746 <code class="computeroutput"><span class="keyword">false</span></code> 747 </p> 748 </td> 749</tr> 750<tr> 751<td> 752 <p> 753 <code class="computeroutput"><span class="identifier">size</span><span class="special">()</span></code> 754 </p> 755 </td> 756<td> 757 <p> 758 <code class="computeroutput"><span class="identifier">s</span><span class="special">.</span><span class="identifier">size</span><span class="special">()</span></code> 759 </p> 760 </td> 761</tr> 762<tr> 763<td> 764 <p> 765 <code class="computeroutput"><span class="identifier">str</span><span class="special">()</span></code> 766 </p> 767 </td> 768<td> 769 <p> 770 <span class="emphasis"><em>s</em></span> 771 </p> 772 </td> 773</tr> 774<tr> 775<td> 776 <p> 777 <code class="computeroutput"><span class="identifier">flags</span><span class="special">()</span></code> 778 </p> 779 </td> 780<td> 781 <p> 782 <span class="emphasis"><em>f</em></span> 783 </p> 784 </td> 785</tr> 786<tr> 787<td> 788 <p> 789 <code class="computeroutput"><span class="identifier">mark_count</span><span class="special">()</span></code> 790 </p> 791 </td> 792<td> 793 <p> 794 The number of marked sub-expressions within the expression. 795 </p> 796 </td> 797</tr> 798</tbody> 799</table></div> 800</div> 801<br class="table-break"><a name="boost_regex.basic_regex.construct7"></a><pre class="programlisting"><span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">ForwardIterator</span><span class="special">></span> 802<span class="identifier">basic_regex</span><span class="special">(</span><span class="identifier">ForwardIterator</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">ForwardIterator</span> <span class="identifier">last</span><span class="special">,</span> 803 <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span> 804</pre> 805<p> 806 <span class="bold"><strong>Throws</strong></span>: <a class="link" href="bad_expression.html" title="bad_expression"><code class="computeroutput"><span class="identifier">bad_expression</span></code></a> if the sequence [first, 807 last) is not a valid regular expression, unless the flag <code class="computeroutput"><span class="identifier">no_except</span></code> 808 is set in <span class="emphasis"><em>f</em></span>. 809 </p> 810<p> 811 <span class="bold"><strong>Effects</strong></span>: Constructs an object of class 812 <a class="link" href="basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>; 813 the object's internal finite state machine is constructed from the regular 814 expression contained in the sequence of characters [first, last), and interpreted 815 according to the <a class="link" href="syntax_option_type.html" title="syntax_option_type">option 816 flags</a> specified in <span class="emphasis"><em>f</em></span>. 817 </p> 818<div class="table"> 819<a name="boost_regex.ref.basic_regex.postconditions_for_basic_regex_3"></a><p class="title"><b>Table 6. Postconditions for basic_regex construction</b></p> 820<div class="table-contents"><table class="table" summary="Postconditions for basic_regex construction"> 821<colgroup> 822<col> 823<col> 824</colgroup> 825<thead><tr> 826<th> 827 <p> 828 Element 829 </p> 830 </th> 831<th> 832 <p> 833 Value 834 </p> 835 </th> 836</tr></thead> 837<tbody> 838<tr> 839<td> 840 <p> 841 <code class="computeroutput"><span class="identifier">empty</span><span class="special">()</span></code> 842 </p> 843 </td> 844<td> 845 <p> 846 <code class="computeroutput"><span class="keyword">false</span></code> 847 </p> 848 </td> 849</tr> 850<tr> 851<td> 852 <p> 853 <code class="computeroutput"><span class="identifier">size</span><span class="special">()</span></code> 854 </p> 855 </td> 856<td> 857 <p> 858 <code class="computeroutput"><span class="identifier">distance</span><span class="special">(</span><span class="identifier">first</span><span class="special">,</span><span class="identifier">last</span><span class="special">)</span></code> 859 </p> 860 </td> 861</tr> 862<tr> 863<td> 864 <p> 865 <code class="computeroutput"><span class="identifier">str</span><span class="special">()</span></code> 866 </p> 867 </td> 868<td> 869 <p> 870 <code class="computeroutput"><span class="identifier">basic_string</span><span class="special"><</span><span class="identifier">charT</span><span class="special">>(</span><span class="identifier">first</span><span class="special">,</span><span class="identifier">last</span><span class="special">)</span></code> 871 </p> 872 </td> 873</tr> 874<tr> 875<td> 876 <p> 877 <code class="computeroutput"><span class="identifier">flags</span><span class="special">()</span></code> 878 </p> 879 </td> 880<td> 881 <p> 882 <span class="emphasis"><em>f</em></span> 883 </p> 884 </td> 885</tr> 886<tr> 887<td> 888 <p> 889 <code class="computeroutput"><span class="identifier">mark_count</span><span class="special">()</span></code> 890 </p> 891 </td> 892<td> 893 <p> 894 The number of marked sub-expressions within the expression. 895 </p> 896 </td> 897</tr> 898</tbody> 899</table></div> 900</div> 901<br class="table-break"><a name="boost_regex.basic_regex.opeq1"></a><pre class="programlisting"><span class="identifier">basic_regex</span><span class="special">&</span> <span class="keyword">operator</span><span class="special">=(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&</span> <span class="identifier">e</span><span class="special">);</span> 902</pre> 903<p> 904 <span class="bold"><strong>Effects</strong></span>: Returns the result of <code class="computeroutput"><span class="identifier">assign</span><span class="special">(</span><span class="identifier">e</span><span class="special">.</span><span class="identifier">str</span><span class="special">(),</span> <span class="identifier">e</span><span class="special">.</span><span class="identifier">flags</span><span class="special">())</span></code>. 905 </p> 906<a name="boost_regex.basic_regex.opeq2"></a><pre class="programlisting"><span class="identifier">basic_regex</span><span class="special">&</span> <span class="keyword">operator</span><span class="special">=(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">ptr</span><span class="special">);</span> 907</pre> 908<p> 909 <span class="bold"><strong>Requires</strong></span>: <span class="emphasis"><em>p</em></span> shall not 910 be a null pointer. 911 </p> 912<p> 913 <span class="bold"><strong>Effects</strong></span>: Returns the result of <code class="computeroutput"><span class="identifier">assign</span><span class="special">(</span><span class="identifier">ptr</span><span class="special">)</span></code>. 914 </p> 915<a name="boost_regex.basic_regex.opeq3"></a><pre class="programlisting"><span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">ST</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">SA</span><span class="special">></span> 916<span class="identifier">basic_regex</span><span class="special">&</span> <span class="keyword">operator</span><span class="special">=(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">ST</span><span class="special">,</span> <span class="identifier">SA</span><span class="special">>&</span> <span class="identifier">p</span><span class="special">);</span> 917</pre> 918<p> 919 <span class="bold"><strong>Effects</strong></span>: Returns the result of <code class="computeroutput"><span class="identifier">assign</span><span class="special">(</span><span class="identifier">p</span><span class="special">)</span></code>. 920 </p> 921<a name="boost_regex.basic_regex.subexpression"></a><pre class="programlisting"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span><span class="special"><</span><span class="identifier">const_iterator</span><span class="special">,</span> <span class="identifier">const_iterator</span><span class="special">></span> <span class="identifier">subexpression</span><span class="special">(</span><span class="identifier">size_type</span> <span class="identifier">n</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> 922</pre> 923<p> 924 <span class="bold"><strong>Effects</strong></span>: Returns a pair of iterators denoting 925 the location of marked subexpression <span class="emphasis"><em>n</em></span> within the original 926 regular expression string. The returned iterators are relative to <code class="computeroutput"><span class="identifier">begin</span><span class="special">()</span></code> 927 and <code class="computeroutput"><span class="identifier">end</span><span class="special">()</span></code>. 928 </p> 929<p> 930 <span class="bold"><strong>Requires</strong></span>: The expression must have been 931 compiled with the <a class="link" href="syntax_option_type.html" title="syntax_option_type"><code class="computeroutput"><span class="identifier">syntax_option_type</span></code></a> save_subexpression_location 932 set. Argument <span class="emphasis"><em>n</em></span> must be in within the range <code class="computeroutput"><span class="number">0</span> <span class="special"><=</span> <span class="identifier">n</span> 933 <span class="special"><</span> <span class="identifier">mark_count</span><span class="special">()</span></code>. 934 </p> 935<a name="boost_regex.basic_regex.begin"></a><pre class="programlisting"><span class="identifier">const_iterator</span> <span class="identifier">begin</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span> 936</pre> 937<p> 938 <span class="bold"><strong>Effects</strong></span>: Returns a starting iterator to 939 a sequence of characters representing the regular expression. 940 </p> 941<a name="boost_regex.basic_regex.end"></a><pre class="programlisting"><span class="identifier">const_iterator</span> <span class="identifier">end</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span> 942</pre> 943<p> 944 <span class="bold"><strong>Effects</strong></span>: Returns termination iterator to 945 a sequence of characters representing the regular expression. 946 </p> 947<a name="boost_regex.basic_regex.size"></a><pre class="programlisting"><span class="identifier">size_type</span> <span class="identifier">size</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span> 948</pre> 949<p> 950 <span class="bold"><strong>Effects</strong></span>: Returns the length of the sequence 951 of characters representing the regular expression. 952 </p> 953<a name="boost_regex.basic_regex.max_size"></a><pre class="programlisting"><span class="identifier">size_type</span> <span class="identifier">max_size</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span> 954</pre> 955<p> 956 <span class="bold"><strong>Effects</strong></span>: Returns the maximum length of the 957 sequence of characters representing the regular expression. 958 </p> 959<a name="boost_regex.basic_regex.empty"></a><pre class="programlisting"><span class="keyword">bool</span> <span class="identifier">empty</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span> 960</pre> 961<p> 962 <span class="bold"><strong>Effects</strong></span>: Returns true if the object does 963 not contain a valid regular expression, otherwise false. 964 </p> 965<a name="boost_regex.basic_regex.mark_count"></a><pre class="programlisting"><span class="identifier">size_type</span> <span class="identifier">mark_count</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span> 966</pre> 967<p> 968 <span class="bold"><strong>Effects</strong></span>: Returns the number of marked sub-expressions 969 within the regular expression. 970 </p> 971<a name="boost_regex.basic_regex.assign1"></a><pre class="programlisting"><span class="identifier">basic_regex</span><span class="special">&</span> <span class="identifier">assign</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special">&</span> <span class="identifier">that</span><span class="special">);</span> 972</pre> 973<p> 974 <span class="bold"><strong>Effects</strong></span>: Returns <a class="link" href="basic_regex.html#boost_regex.basic_regex.assign4"><code class="computeroutput"><span class="identifier">assign</span><span class="special">(</span><span class="identifier">that</span><span class="special">.</span><span class="identifier">str</span><span class="special">(),</span> <span class="identifier">that</span><span class="special">.</span><span class="identifier">flags</span><span class="special">())</span></code></a>. 975 </p> 976<a name="boost_regex.basic_regex.assign2"></a><pre class="programlisting"><span class="identifier">basic_regex</span><span class="special">&</span> <span class="identifier">assign</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">ptr</span><span class="special">,</span> <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span> 977</pre> 978<p> 979 <span class="bold"><strong>Effects</strong></span>: Returns <a class="link" href="basic_regex.html#boost_regex.basic_regex.assign4"><code class="computeroutput"><span class="identifier">assign</span><span class="special">(</span><span class="identifier">string_type</span><span class="special">(</span><span class="identifier">ptr</span><span class="special">),</span> <span class="identifier">f</span><span class="special">)</span></code></a>. 980 </p> 981<a name="boost_regex.basic_regex.assign3"></a><pre class="programlisting"><span class="identifier">basic_regex</span><span class="special">&</span> <span class="identifier">assign</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">charT</span><span class="special">*</span> <span class="identifier">ptr</span><span class="special">,</span> <span class="keyword">unsigned</span> <span class="keyword">int</span> <span class="identifier">len</span><span class="special">,</span> <span class="identifier">flag_type</span> <span class="identifier">f</span><span class="special">);</span> 982</pre> 983<p> 984 <span class="bold"><strong>Effects</strong></span>: Returns <a class="link" href="basic_regex.html#boost_regex.basic_regex.assign4"><code class="computeroutput"><span class="identifier">assign</span><span class="special">(</span><span class="identifier">string_type</span><span class="special">(</span><span class="identifier">ptr</span><span class="special">,</span> <span class="identifier">len</span><span class="special">),</span> <span class="identifier">f</span><span class="special">)</span></code></a>. 985 </p> 986<a name="boost_regex.basic_regex.assign4"></a><pre class="programlisting"><span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">string_traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">A</span><span class="special">></span> 987<span class="identifier">basic_regex</span><span class="special">&</span> <span class="identifier">assign</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_string</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">string_traits</span><span class="special">,</span> <span class="identifier">A</span><span class="special">>&</span> <span class="identifier">s</span><span class="special">,</span> 988 <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span> 989</pre> 990<p> 991 <span class="bold"><strong>Throws</strong></span>: <a class="link" href="bad_expression.html" title="bad_expression"><code class="computeroutput"><span class="identifier">bad_expression</span></code></a> if <span class="emphasis"><em>s</em></span> 992 is not a valid regular expression, unless the flag <code class="computeroutput"><span class="identifier">no_except</span></code> 993 is set in <span class="emphasis"><em>f</em></span>. 994 </p> 995<p> 996 <span class="bold"><strong>Returns</strong></span>: *this. 997 </p> 998<p> 999 <span class="bold"><strong>Effects</strong></span>: Assigns the regular expression 1000 contained in the string <span class="emphasis"><em>s</em></span>, interpreted according the 1001 <a class="link" href="syntax_option_type.html" title="syntax_option_type">option flags</a> specified 1002 in <span class="emphasis"><em>f</em></span>. 1003 </p> 1004<div class="table"> 1005<a name="boost_regex.ref.basic_regex.postconditions_for_basic_regex_a"></a><p class="title"><b>Table 7. Postconditions for basic_regex::assign</b></p> 1006<div class="table-contents"><table class="table" summary="Postconditions for basic_regex::assign"> 1007<colgroup> 1008<col> 1009<col> 1010</colgroup> 1011<thead><tr> 1012<th> 1013 <p> 1014 Element 1015 </p> 1016 </th> 1017<th> 1018 <p> 1019 Value 1020 </p> 1021 </th> 1022</tr></thead> 1023<tbody> 1024<tr> 1025<td> 1026 <p> 1027 <code class="computeroutput"><span class="identifier">empty</span><span class="special">()</span></code> 1028 </p> 1029 </td> 1030<td> 1031 <p> 1032 <code class="computeroutput"><span class="keyword">false</span></code> 1033 </p> 1034 </td> 1035</tr> 1036<tr> 1037<td> 1038 <p> 1039 <code class="computeroutput"><span class="identifier">size</span><span class="special">()</span></code> 1040 </p> 1041 </td> 1042<td> 1043 <p> 1044 <code class="computeroutput"><span class="identifier">s</span><span class="special">.</span><span class="identifier">size</span><span class="special">()</span></code> 1045 </p> 1046 </td> 1047</tr> 1048<tr> 1049<td> 1050 <p> 1051 <code class="computeroutput"><span class="identifier">str</span><span class="special">()</span></code> 1052 </p> 1053 </td> 1054<td> 1055 <p> 1056 <span class="emphasis"><em>s</em></span> 1057 </p> 1058 </td> 1059</tr> 1060<tr> 1061<td> 1062 <p> 1063 <code class="computeroutput"><span class="identifier">flags</span><span class="special">()</span></code> 1064 </p> 1065 </td> 1066<td> 1067 <p> 1068 <span class="emphasis"><em>f</em></span> 1069 </p> 1070 </td> 1071</tr> 1072<tr> 1073<td> 1074 <p> 1075 <code class="computeroutput"><span class="identifier">mark_count</span><span class="special">()</span></code> 1076 </p> 1077 </td> 1078<td> 1079 <p> 1080 The number of marked sub-expressions within the expression. 1081 </p> 1082 </td> 1083</tr> 1084</tbody> 1085</table></div> 1086</div> 1087<br class="table-break"><a name="boost_regex.basic_regex.assign5"></a><pre class="programlisting"><span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">InputIterator</span><span class="special">></span> 1088<span class="identifier">basic_regex</span><span class="special">&</span> <span class="identifier">assign</span><span class="special">(</span><span class="identifier">InputIterator</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">InputIterator</span> <span class="identifier">last</span><span class="special">,</span> 1089 <span class="identifier">flag_type</span> <span class="identifier">f</span> <span class="special">=</span> <span class="identifier">regex_constants</span><span class="special">::</span><span class="identifier">normal</span><span class="special">);</span> 1090</pre> 1091<p> 1092 <span class="bold"><strong>Requires</strong></span>: The type <code class="computeroutput"><span class="identifier">InputIterator</span></code> 1093 corresponds to the <a href="http://input_iterator" target="_top">Input Iterator requirements 1094 (24.1.1)</a>. 1095 </p> 1096<p> 1097 <span class="bold"><strong>Effects</strong></span>: Returns <a class="link" href="basic_regex.html#boost_regex.basic_regex.assign4"><code class="computeroutput"><span class="identifier">assign</span><span class="special">(</span><span class="identifier">string_type</span><span class="special">(</span><span class="identifier">first</span><span class="special">,</span> <span class="identifier">last</span><span class="special">),</span> <span class="identifier">f</span><span class="special">)</span></code></a>. 1098 </p> 1099<a name="boost_regex.basic_regex.flags"></a><pre class="programlisting"><span class="identifier">flag_type</span> <span class="identifier">flags</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span> 1100</pre> 1101<p> 1102 <span class="bold"><strong>Effects</strong></span>: Returns a copy of the <a class="link" href="syntax_option_type.html" title="syntax_option_type">regular 1103 expression syntax flags</a> that were passed to the object's constructor, 1104 or the last call to <code class="computeroutput"><span class="identifier">assign</span></code>. 1105 </p> 1106<a name="boost_regex.basic_regex.status"></a><pre class="programlisting"><span class="keyword">int</span> <span class="identifier">status</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span> 1107</pre> 1108<p> 1109 <span class="bold"><strong>Effects</strong></span>: Returns zero if the expression 1110 contains a valid regular expression, otherwise an error code. This member 1111 function is retained for use in environments that cannot use exception handling. 1112 </p> 1113<a name="boost_regex.basic_regex.str"></a><pre class="programlisting"><span class="identifier">basic_string</span><span class="special"><</span><span class="identifier">charT</span><span class="special">></span> <span class="identifier">str</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span> 1114</pre> 1115<p> 1116 <span class="bold"><strong>Effects</strong></span>: Returns a copy of the character 1117 sequence passed to the object's constructor, or the last call to assign. 1118 </p> 1119<a name="boost_regex.basic_regex.compare"></a><pre class="programlisting"><span class="keyword">int</span> <span class="identifier">compare</span><span class="special">(</span><span class="identifier">basic_regex</span><span class="special">&</span> <span class="identifier">e</span><span class="special">)</span><span class="keyword">const</span><span class="special">;</span> 1120</pre> 1121<p> 1122 <span class="bold"><strong>Effects</strong></span>: If <code class="computeroutput"><span class="identifier">flags</span><span class="special">()</span> <span class="special">==</span> <span class="identifier">e</span><span class="special">.</span><span class="identifier">flags</span><span class="special">()</span></code> then returns <code class="computeroutput"><span class="identifier">str</span><span class="special">().</span><span class="identifier">compare</span><span class="special">(</span><span class="identifier">e</span><span class="special">.</span><span class="identifier">str</span><span class="special">())</span></code>, 1123 otherwise returns <code class="computeroutput"><span class="identifier">flags</span><span class="special">()</span> 1124 <span class="special">-</span> <span class="identifier">e</span><span class="special">.</span><span class="identifier">flags</span><span class="special">()</span></code>. 1125 </p> 1126<a name="boost_regex.basic_regex.imbue"></a><pre class="programlisting"><span class="identifier">locale_type</span> <span class="identifier">imbue</span><span class="special">(</span><span class="identifier">locale_type</span> <span class="identifier">l</span><span class="special">);</span> 1127</pre> 1128<p> 1129 <span class="bold"><strong>Effects</strong></span>: Returns the result of <code class="computeroutput"><span class="identifier">traits_inst</span><span class="special">.</span><span class="identifier">imbue</span><span class="special">(</span><span class="identifier">l</span><span class="special">)</span></code> where 1130 <code class="computeroutput"><span class="identifier">traits_inst</span></code> is a (default 1131 initialized) instance of the template parameter <code class="computeroutput"><span class="identifier">traits</span></code> 1132 stored within the object. Calls to <code class="computeroutput"><span class="identifier">imbue</span></code> 1133 invalidate any currently contained regular expression. 1134 </p> 1135<p> 1136 <span class="bold"><strong>Postcondition</strong></span>: <code class="computeroutput"><span class="identifier">empty</span><span class="special">()</span> <span class="special">==</span> <span class="keyword">true</span></code>. 1137 </p> 1138<a name="boost_regex.basic_regex.getloc"></a><pre class="programlisting"><span class="identifier">locale_type</span> <span class="identifier">getloc</span><span class="special">()</span> <span class="keyword">const</span><span class="special">;</span> 1139</pre> 1140<p> 1141 <span class="bold"><strong>Effects</strong></span>: Returns the result of <code class="computeroutput"><span class="identifier">traits_inst</span><span class="special">.</span><span class="identifier">getloc</span><span class="special">()</span></code> 1142 where <code class="computeroutput"><span class="identifier">traits_inst</span></code> is a (default 1143 initialized) instance of the template parameter traits stored within the 1144 object. 1145 </p> 1146<a name="boost_regex.basic_regex.swap"></a><pre class="programlisting"><span class="keyword">void</span> <span class="identifier">swap</span><span class="special">(</span><span class="identifier">basic_regex</span><span class="special">&</span> <span class="identifier">e</span><span class="special">)</span> <span class="keyword">throw</span><span class="special">();</span> 1147</pre> 1148<p> 1149 <span class="bold"><strong>Effects</strong></span>: Swaps the contents of the two regular 1150 expressions. 1151 </p> 1152<p> 1153 <span class="bold"><strong>Postcondition</strong></span>: <code class="computeroutput"><span class="special">*</span><span class="keyword">this</span></code> contains the regular expression that 1154 was in <span class="emphasis"><em>e</em></span>, <span class="emphasis"><em>e</em></span> contains the regular 1155 expression that was in <code class="computeroutput"><span class="special">*</span><span class="keyword">this</span></code>. 1156 </p> 1157<p> 1158 <span class="bold"><strong>Complexity</strong></span>: constant time. 1159 </p> 1160<div class="note"><table border="0" summary="Note"> 1161<tr> 1162<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../../../../../doc/src/images/note.png"></td> 1163<th align="left">Note</th> 1164</tr> 1165<tr><td align="left" valign="top"><p> 1166 Comparisons between <a class="link" href="basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a> objects are provided 1167 on an experimental basis: please note that these are not present in the 1168 <a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1836.pdf" target="_top">Technical 1169 Report on C++ Library Extensions</a>, so use with care if you are writing 1170 code that may need to be ported to other implementations of <a class="link" href="basic_regex.html" title="basic_regex"><code class="computeroutput"><span class="identifier">basic_regex</span></code></a>. 1171 </p></td></tr> 1172</table></div> 1173<a name="boost_regex.basic_regex.op_eq"></a><pre class="programlisting"><span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">></span> 1174<span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">==</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">lhs</span><span class="special">,</span> 1175 <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">rhs</span><span class="special">);</span> 1176</pre> 1177<p> 1178 <span class="bold"><strong>Effects</strong></span>: Returns <code class="computeroutput"><span class="identifier">lhs</span><span class="special">.</span><span class="identifier">compare</span><span class="special">(</span><span class="identifier">rhs</span><span class="special">)</span> 1179 <span class="special">==</span> <span class="number">0</span></code>. 1180 </p> 1181<a name="boost_regex.basic_regex.op_ne"></a><pre class="programlisting"><span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">></span> 1182<span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">!=</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">lhs</span><span class="special">,</span> 1183 <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">rhs</span><span class="special">);</span> 1184</pre> 1185<p> 1186 <span class="bold"><strong>Effects</strong></span>: Returns <code class="computeroutput"><span class="identifier">lhs</span><span class="special">.</span><span class="identifier">compare</span><span class="special">(</span><span class="identifier">rhs</span><span class="special">)</span> 1187 <span class="special">!=</span> <span class="number">0</span></code>. 1188 </p> 1189<a name="boost_regex.basic_regex.op_lt"></a><pre class="programlisting"><span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">></span> 1190<span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special"><</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">lhs</span><span class="special">,</span> 1191 <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">rhs</span><span class="special">);</span> 1192</pre> 1193<p> 1194 <span class="bold"><strong>Effects</strong></span>: Returns <code class="computeroutput"><span class="identifier">lhs</span><span class="special">.</span><span class="identifier">compare</span><span class="special">(</span><span class="identifier">rhs</span><span class="special">)</span> 1195 <span class="special"><</span> <span class="number">0</span></code>. 1196 </p> 1197<a name="boost_regex.basic_regex.op_le"></a><pre class="programlisting"><span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">></span> 1198<span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special"><=</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">lhs</span><span class="special">,</span> 1199 <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">rhs</span><span class="special">);</span> 1200</pre> 1201<p> 1202 <span class="bold"><strong>Effects</strong></span>: Returns <code class="computeroutput"><span class="identifier">lhs</span><span class="special">.</span><span class="identifier">compare</span><span class="special">(</span><span class="identifier">rhs</span><span class="special">)</span> 1203 <span class="special"><=</span> <span class="number">0</span></code>. 1204 </p> 1205<a name="boost_regex.basic_regex.op_ge"></a><pre class="programlisting"><span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">></span> 1206<span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">>=</span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">lhs</span><span class="special">,</span> 1207 <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">rhs</span><span class="special">);</span> 1208</pre> 1209<p> 1210 <span class="bold"><strong>Effects</strong></span>: Returns <code class="computeroutput"><span class="identifier">lhs</span><span class="special">.</span><span class="identifier">compare</span><span class="special">(</span><span class="identifier">rhs</span><span class="special">)</span> 1211 <span class="special">>=</span> <span class="number">0</span></code>. 1212 </p> 1213<a name="boost_regex.basic_regex.op_gt"></a><pre class="programlisting"><span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">></span> 1214<span class="keyword">bool</span> <span class="keyword">operator</span> <span class="special">></span> <span class="special">(</span><span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">lhs</span><span class="special">,</span> 1215 <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">rhs</span><span class="special">);</span> 1216</pre> 1217<p> 1218 <span class="bold"><strong>Effects</strong></span>: Returns <code class="computeroutput"><span class="identifier">lhs</span><span class="special">.</span><span class="identifier">compare</span><span class="special">(</span><span class="identifier">rhs</span><span class="special">)</span> 1219 <span class="special">></span> <span class="number">0</span></code>. 1220 </p> 1221<div class="note"><table border="0" summary="Note"> 1222<tr> 1223<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../../../../../doc/src/images/note.png"></td> 1224<th align="left">Note</th> 1225</tr> 1226<tr><td align="left" valign="top"><p> 1227 The basic_regex stream inserter is provided on an experimental basis, and 1228 outputs the textual representation of the expression to the stream. 1229 </p></td></tr> 1230</table></div> 1231<a name="boost_regex.basic_regex.op_stream"></a><pre class="programlisting"><span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">io_traits</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">re_traits</span><span class="special">></span> 1232<span class="identifier">basic_ostream</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">io_traits</span><span class="special">>&</span> 1233 <span class="keyword">operator</span> <span class="special"><<</span> <span class="special">(</span><span class="identifier">basic_ostream</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">io_traits</span><span class="special">>&</span> <span class="identifier">os</span> 1234 <span class="keyword">const</span> <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">re_traits</span><span class="special">>&</span> <span class="identifier">e</span><span class="special">);</span> 1235</pre> 1236<p> 1237 <span class="bold"><strong>Effects</strong></span>: Returns <code class="computeroutput"><span class="special">(</span><span class="identifier">os</span> <span class="special"><<</span> <span class="identifier">e</span><span class="special">.</span><span class="identifier">str</span><span class="special">())</span></code>. 1238 </p> 1239<a name="boost_regex.basic_regex.op_swap"></a><pre class="programlisting"><span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">charT</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">traits</span><span class="special">></span> 1240<span class="keyword">void</span> <span class="identifier">swap</span><span class="special">(</span><span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">lhs</span><span class="special">,</span> 1241 <span class="identifier">basic_regex</span><span class="special"><</span><span class="identifier">charT</span><span class="special">,</span> <span class="identifier">traits</span><span class="special">>&</span> <span class="identifier">rhs</span><span class="special">);</span> 1242</pre> 1243<p> 1244 <span class="bold"><strong>Effects</strong></span>: calls <code class="computeroutput"><span class="identifier">lhs</span><span class="special">.</span><span class="identifier">swap</span><span class="special">(</span><span class="identifier">rhs</span><span class="special">)</span></code>. 1245 </p> 1246</div> 1247<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> 1248<td align="left"></td> 1249<td align="right"><div class="copyright-footer">Copyright © 1998-2013 John Maddock<p> 1250 Distributed under the Boost Software License, Version 1.0. (See accompanying 1251 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>) 1252 </p> 1253</div></td> 1254</tr></table> 1255<hr> 1256<div class="spirit-nav"> 1257<a accesskey="p" href="../ref.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ref.html"><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="match_results.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a> 1258</div> 1259</body> 1260</html> 1261