public member function
<regex>

std::regex_token_iterator::operator==

bool operator==(const regex_token_iterator& rhs) const;
比较 regex_token_iterator
返回值true如果rhsregex_token_iterator对象比较相等。

如果以下任何一项为真,则两个regex_token_iterator比较相等
  • 它们都是序列结束迭代器
  • 一个被构造为或赋值为另一个的副本,现在指向相同的子匹配。
  • 它们都使用firstlastsubmatch(es)flags的等效参数构造,都使用相同的regex对象,并且现在都指向相同的子匹配。

参数

rhs
相同类型的另一个regex_token_iterator对象。

返回值

true如果两个regex_token_iterator比较相等。false否则为 false。

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// regex_token_iterator example
#include <iostream>
#include <string>
#include <regex>

int main ()
{
  std::string s ("this subject has a submarine as a subsequence");
  std::regex e ("\\b(sub)([^ ]*)");   // matches words beginning by "sub"

  std::regex_token_iterator<std::string::iterator> rend; // end-of-sequence iterator

  // iterate over second submatches of each match:
  std::regex_token_iterator<std::string::iterator> rit ( s.begin(), s.end(), e, 2 );

  while (!(rit==rend)) {
    std::cout << *rit << std::endl;
    ++rit;
  }

  return 0;
}

输出
ject
marine
sequence


另见