<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <title>libstdc++: std::regex_iterator< _Bi_iter, _Ch_type, _Rx_traits > Class Template Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="navtree.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="navtree.js"></script> <script type="text/javascript" src="resize.js"></script> <script type="text/javascript"> $(document).ready(initResizable); </script> <link href="doxygen.css" rel="stylesheet" type="text/css"/> </head> <body> <!-- Generated by Doxygen 1.7.4 --> <div id="top"> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">libstdc++</div> </td> </tr> </tbody> </table> </div> </div> <div id="side-nav" class="ui-resizable side-nav-resizable"> <div id="nav-tree"> <div id="nav-tree-contents"> </div> </div> <div id="splitbar" style="-moz-user-select:none;" class="ui-resizable-handle"> </div> </div> <script type="text/javascript"> initNavTree('a00683.html',''); </script> <div id="doc-content"> <div class="header"> <div class="summary"> <a href="#pub-types">Public Types</a> | <a href="#pub-methods">Public Member Functions</a> </div> <div class="headertitle"> <div class="title">std::regex_iterator< _Bi_iter, _Ch_type, _Rx_traits > Class Template Reference<div class="ingroups"><a class="el" href="a01192.html">Regular Expressions</a></div></div> </div> </div> <div class="contents"> <!-- doxytag: class="std::regex_iterator" --> <p><a href="a02351.html">List of all members.</a></p> <h2><a name="pub-types"></a> Public Types</h2> <ul> <li><a class="anchor" id="ac003ad377cafbf6a34e8970740559022"></a><!-- doxytag: member="std::regex_iterator::difference_type" ref="ac003ad377cafbf6a34e8970740559022" args="" --> typedef std::ptrdiff_t <b>difference_type</b> <li><a class="anchor" id="a234debbaf040c7e3042efcc37f4851ea"></a><!-- doxytag: member="std::regex_iterator::iterator_category" ref="a234debbaf040c7e3042efcc37f4851ea" args="" --> typedef <a class="el" href="a00474.html">std::forward_iterator_tag</a> <b>iterator_category</b> <li><a class="anchor" id="a4476424468940f073b151addea97ad15"></a><!-- doxytag: member="std::regex_iterator::pointer" ref="a4476424468940f073b151addea97ad15" args="" --> typedef const <a class="el" href="a00261.html">value_type</a> * <b>pointer</b> <li><a class="anchor" id="a6d05a9575918b10f936ec30b39aa992b"></a><!-- doxytag: member="std::regex_iterator::reference" ref="a6d05a9575918b10f936ec30b39aa992b" args="" --> typedef const <a class="el" href="a00261.html">value_type</a> & <b>reference</b> <li><a class="anchor" id="af9c36a03e769bb417fdb1f356a738e4a"></a><!-- doxytag: member="std::regex_iterator::regex_type" ref="af9c36a03e769bb417fdb1f356a738e4a" args="" --> typedef <a class="el" href="a00402.html">basic_regex</a>< _Ch_type, <br class="typebreak"/> _Rx_traits > <b>regex_type</b> <li><a class="anchor" id="a7fdb9e333b82973586ff89ca4df87222"></a><!-- doxytag: member="std::regex_iterator::value_type" ref="a7fdb9e333b82973586ff89ca4df87222" args="" --> typedef <a class="el" href="a00261.html">match_results</a>< _Bi_iter > <b>value_type</b> </ul> <h2><a name="pub-methods"></a> Public Member Functions</h2> <ul> <li><a class="el" href="a00683.html#a250b3887f719eef6cf7d6890d358c3dd">regex_iterator</a> () <li><a class="el" href="a00683.html#a656c2c42931bc138a1cc6e545cb16651">regex_iterator</a> (_Bi_iter __a, _Bi_iter __b, const <a class="el" href="a00402.html">regex_type</a> &__re, <a class="el" href="a01151.html#a98adb09ee60de1b79934e537c821d3fd">regex_constants::match_flag_type</a> __m=<a class="el" href="a01151.html#a790496799d7cd836ab2c01c59a05cf5b">regex_constants::match_default</a>) <li><a class="el" href="a00683.html#a486e247c2553e44ea03dcbc49c79238d">regex_iterator</a> (const <a class="el" href="a00683.html">regex_iterator</a> &__rhs) <li>bool <a class="el" href="a00683.html#abe8c898fbc8b4c9ee3ef56f9b1ffcc26">operator!=</a> (const <a class="el" href="a00683.html">regex_iterator</a> &__rhs) <li>const <a class="el" href="a00261.html">value_type</a> & <a class="el" href="a00683.html#a0468e15b4832731f816d2777f934ad90">operator*</a> () <li><a class="el" href="a00683.html">regex_iterator</a> & <a class="el" href="a00683.html#a08638d2ec9fbbe6fecd5d3b732747a6c">operator++</a> () <li><a class="el" href="a00683.html">regex_iterator</a> <a class="el" href="a00683.html#a5cc20a645b74551c5130c8740fe96d9e">operator++</a> (int) <li>const <a class="el" href="a00261.html">value_type</a> * <a class="el" href="a00683.html#aba0b531ab020a90519300aa32aa971bd">operator-></a> () <li><a class="el" href="a00683.html">regex_iterator</a> & <a class="el" href="a00683.html#a387de5ce658a813bef5ff68cc2e2efc7">operator=</a> (const <a class="el" href="a00683.html">regex_iterator</a> &__rhs) <li>bool <a class="el" href="a00683.html#a7b102bce619f4e86486e8a50e4b7de21">operator==</a> (const <a class="el" href="a00683.html">regex_iterator</a> &__rhs) </ul> <hr/><a name="details" id="details"></a><h2>Detailed Description</h2> <div class="textblock"><h3>template<typename _Bi_iter, typename _Ch_type = typename iterator_traits<_Bi_iter>::value_type, typename _Rx_traits = regex_traits<_Ch_type>><br/> class std::regex_iterator< _Bi_iter, _Ch_type, _Rx_traits ></h3> <p>An iterator adaptor that will provide repeated calls of regex_search over a range until no more matches remain. </p> <p>Definition at line <a class="el" href="a01006_source.html#l02238">2238</a> of file <a class="el" href="a01006_source.html">regex.h</a>.</p> </div><hr/><h2>Constructor & Destructor Documentation</h2> <a class="anchor" id="a250b3887f719eef6cf7d6890d358c3dd"></a><!-- doxytag: member="std::regex_iterator::regex_iterator" ref="a250b3887f719eef6cf7d6890d358c3dd" args="()" --> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename _Bi_iter , typename _Ch_type = typename iterator_traits<_Bi_iter>::value_type, typename _Rx_traits = regex_traits<_Ch_type>> </div> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00683.html">std::regex_iterator</a>< _Bi_iter, _Ch_type, _Rx_traits >::<a class="el" href="a00683.html">regex_iterator</a> </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Provides a singular iterator, useful for indicating one-past-the-end of a range. </p> <dl class="todo"><dt><b><a class="el" href="a01213.html#_todo000029">Todo:</a></b></dt><dd><p class="startdd">Implement this function. </p> <p class="enddd">Needs documentation! See <a href="http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html">http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html</a> </p> </dd></dl> </div> </div> <a class="anchor" id="a656c2c42931bc138a1cc6e545cb16651"></a><!-- doxytag: member="std::regex_iterator::regex_iterator" ref="a656c2c42931bc138a1cc6e545cb16651" args="(_Bi_iter __a, _Bi_iter __b, const regex_type &__re, regex_constants::match_flag_type __m=regex_constants::match_default)" --> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename _Bi_iter , typename _Ch_type = typename iterator_traits<_Bi_iter>::value_type, typename _Rx_traits = regex_traits<_Ch_type>> </div> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00683.html">std::regex_iterator</a>< _Bi_iter, _Ch_type, _Rx_traits >::<a class="el" href="a00683.html">regex_iterator</a> </td> <td>(</td> <td class="paramtype">_Bi_iter </td> <td class="paramname"><em>__a</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">_Bi_iter </td> <td class="paramname"><em>__b</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="a00402.html">regex_type</a> & </td> <td class="paramname"><em>__re</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a01151.html#a98adb09ee60de1b79934e537c821d3fd">regex_constants::match_flag_type</a> </td> <td class="paramname"><em>__m</em> = <code><a class="el" href="a01151.html#a790496799d7cd836ab2c01c59a05cf5b">regex_constants::match_default</a></code> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Constructs a regex_iterator... </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">a</td><td>[IN] The start of a text range to search. </td></tr> <tr><td class="paramname">b</td><td>[IN] One-past-the-end of the text range to search. </td></tr> <tr><td class="paramname">re</td><td>[IN] The regular expression to match. </td></tr> <tr><td class="paramname">m</td><td>[IN] Policy flags for match rules. </td></tr> </table> </dd> </dl> <dl class="todo"><dt><b><a class="el" href="a01213.html#_todo000030">Todo:</a></b></dt><dd><p class="startdd">Implement this function. </p> <p class="enddd">Needs documentation! See <a href="http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html">http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html</a> </p> </dd></dl> </div> </div> <a class="anchor" id="a486e247c2553e44ea03dcbc49c79238d"></a><!-- doxytag: member="std::regex_iterator::regex_iterator" ref="a486e247c2553e44ea03dcbc49c79238d" args="(const regex_iterator &__rhs)" --> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename _Bi_iter , typename _Ch_type = typename iterator_traits<_Bi_iter>::value_type, typename _Rx_traits = regex_traits<_Ch_type>> </div> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00683.html">std::regex_iterator</a>< _Bi_iter, _Ch_type, _Rx_traits >::<a class="el" href="a00683.html">regex_iterator</a> </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00683.html">regex_iterator</a>< _Bi_iter, _Ch_type, _Rx_traits > & </td> <td class="paramname"><em>__rhs</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Copy constructs a regex_iterator. </p> <dl class="todo"><dt><b><a class="el" href="a01213.html#_todo000031">Todo:</a></b></dt><dd><p class="startdd">Implement this function. </p> <p class="enddd">Needs documentation! See <a href="http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html">http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html</a> </p> </dd></dl> </div> </div> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="abe8c898fbc8b4c9ee3ef56f9b1ffcc26"></a><!-- doxytag: member="std::regex_iterator::operator!=" ref="abe8c898fbc8b4c9ee3ef56f9b1ffcc26" args="(const regex_iterator &__rhs)" --> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename _Bi_iter , typename _Ch_type = typename iterator_traits<_Bi_iter>::value_type, typename _Rx_traits = regex_traits<_Ch_type>> </div> <table class="memname"> <tr> <td class="memname">bool <a class="el" href="a00683.html">std::regex_iterator</a>< _Bi_iter, _Ch_type, _Rx_traits >::operator!= </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00683.html">regex_iterator</a>< _Bi_iter, _Ch_type, _Rx_traits > & </td> <td class="paramname"><em>__rhs</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <dl class="todo"><dt><b><a class="el" href="a01213.html#_todo000034">Todo:</a></b></dt><dd><p class="startdd">Implement this function. </p> <p class="enddd">Needs documentation! See <a href="http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html">http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html</a> </p> </dd></dl> </div> </div> <a class="anchor" id="a0468e15b4832731f816d2777f934ad90"></a><!-- doxytag: member="std::regex_iterator::operator*" ref="a0468e15b4832731f816d2777f934ad90" args="()" --> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename _Bi_iter , typename _Ch_type = typename iterator_traits<_Bi_iter>::value_type, typename _Rx_traits = regex_traits<_Ch_type>> </div> <table class="memname"> <tr> <td class="memname">const <a class="el" href="a00261.html">value_type</a>& <a class="el" href="a00683.html">std::regex_iterator</a>< _Bi_iter, _Ch_type, _Rx_traits >::operator* </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <dl class="todo"><dt><b><a class="el" href="a01213.html#_todo000035">Todo:</a></b></dt><dd><p class="startdd">Implement this function. </p> <p class="enddd">Needs documentation! See <a href="http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html">http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html</a> </p> </dd></dl> </div> </div> <a class="anchor" id="a5cc20a645b74551c5130c8740fe96d9e"></a><!-- doxytag: member="std::regex_iterator::operator++" ref="a5cc20a645b74551c5130c8740fe96d9e" args="(int)" --> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename _Bi_iter , typename _Ch_type = typename iterator_traits<_Bi_iter>::value_type, typename _Rx_traits = regex_traits<_Ch_type>> </div> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00683.html">regex_iterator</a> <a class="el" href="a00683.html">std::regex_iterator</a>< _Bi_iter, _Ch_type, _Rx_traits >::operator++ </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <dl class="todo"><dt><b><a class="el" href="a01213.html#_todo000038">Todo:</a></b></dt><dd><p class="startdd">Implement this function. </p> <p class="enddd">Needs documentation! See <a href="http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html">http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html</a> </p> </dd></dl> </div> </div> <a class="anchor" id="a08638d2ec9fbbe6fecd5d3b732747a6c"></a><!-- doxytag: member="std::regex_iterator::operator++" ref="a08638d2ec9fbbe6fecd5d3b732747a6c" args="()" --> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename _Bi_iter , typename _Ch_type = typename iterator_traits<_Bi_iter>::value_type, typename _Rx_traits = regex_traits<_Ch_type>> </div> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00683.html">regex_iterator</a>& <a class="el" href="a00683.html">std::regex_iterator</a>< _Bi_iter, _Ch_type, _Rx_traits >::operator++ </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <dl class="todo"><dt><b><a class="el" href="a01213.html#_todo000037">Todo:</a></b></dt><dd><p class="startdd">Implement this function. </p> <p class="enddd">Needs documentation! See <a href="http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html">http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html</a> </p> </dd></dl> </div> </div> <a class="anchor" id="aba0b531ab020a90519300aa32aa971bd"></a><!-- doxytag: member="std::regex_iterator::operator->" ref="aba0b531ab020a90519300aa32aa971bd" args="()" --> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename _Bi_iter , typename _Ch_type = typename iterator_traits<_Bi_iter>::value_type, typename _Rx_traits = regex_traits<_Ch_type>> </div> <table class="memname"> <tr> <td class="memname">const <a class="el" href="a00261.html">value_type</a>* <a class="el" href="a00683.html">std::regex_iterator</a>< _Bi_iter, _Ch_type, _Rx_traits >::operator-> </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <dl class="todo"><dt><b><a class="el" href="a01213.html#_todo000036">Todo:</a></b></dt><dd><p class="startdd">Implement this function. </p> <p class="enddd">Needs documentation! See <a href="http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html">http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html</a> </p> </dd></dl> </div> </div> <a class="anchor" id="a387de5ce658a813bef5ff68cc2e2efc7"></a><!-- doxytag: member="std::regex_iterator::operator=" ref="a387de5ce658a813bef5ff68cc2e2efc7" args="(const regex_iterator &__rhs)" --> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename _Bi_iter , typename _Ch_type = typename iterator_traits<_Bi_iter>::value_type, typename _Rx_traits = regex_traits<_Ch_type>> </div> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00683.html">regex_iterator</a>& <a class="el" href="a00683.html">std::regex_iterator</a>< _Bi_iter, _Ch_type, _Rx_traits >::operator= </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00683.html">regex_iterator</a>< _Bi_iter, _Ch_type, _Rx_traits > & </td> <td class="paramname"><em>__rhs</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <dl class="todo"><dt><b><a class="el" href="a01213.html#_todo000032">Todo:</a></b></dt><dd><p class="startdd">Implement this function. </p> <p class="enddd">Needs documentation! See <a href="http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html">http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html</a> </p> </dd></dl> </div> </div> <a class="anchor" id="a7b102bce619f4e86486e8a50e4b7de21"></a><!-- doxytag: member="std::regex_iterator::operator==" ref="a7b102bce619f4e86486e8a50e4b7de21" args="(const regex_iterator &__rhs)" --> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename _Bi_iter , typename _Ch_type = typename iterator_traits<_Bi_iter>::value_type, typename _Rx_traits = regex_traits<_Ch_type>> </div> <table class="memname"> <tr> <td class="memname">bool <a class="el" href="a00683.html">std::regex_iterator</a>< _Bi_iter, _Ch_type, _Rx_traits >::operator== </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00683.html">regex_iterator</a>< _Bi_iter, _Ch_type, _Rx_traits > & </td> <td class="paramname"><em>__rhs</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <dl class="todo"><dt><b><a class="el" href="a01213.html#_todo000033">Todo:</a></b></dt><dd><p class="startdd">Implement this function. </p> <p class="enddd">Needs documentation! See <a href="http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html">http://gcc.gnu.org/onlinedocs/libstdc++/manual/documentation_style.html</a> </p> </dd></dl> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="a01006_source.html">regex.h</a></li> </ul> </div> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="a01137.html">std</a> </li> <li class="navelem"><a class="el" href="a00683.html">regex_iterator</a> </li> <li class="footer">Generated by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </li> </ul> </div> </body> </html>