命名空间
变体
操作

std::match_results<BidirIt,Alloc>::position

来自 cppreference.com
< cpp‎ | regex‎ | match results
difference_type position( size_type n = 0 ) const;
(自 C++11 起)

返回指定子匹配的第一个字符的位置。

如果 n == 0,则返回整个匹配表达式的第一个字符的位置。

如果 n > 0 && n < size(),则返回第 nth 个子匹配的第一个字符的位置。

如果 n >= size(),则返回未匹配匹配的第一个字符的位置。

内容

[编辑] 参数

n - 指定要检查的匹配项的整数。

[编辑] 返回值

指定匹配项或子匹配的第一个字符的位置。

[编辑] 示例

#include <iostream>
#include <regex>
#include <string>
 
int main()
{
    std::regex re("a(a)*b");
    std::string target("aaab");
    std::smatch sm;
 
    std::regex_match(target, sm, re);
    std::cout << sm.position(1) << '\n';
}

输出

2

[编辑] 另请参阅

返回指定的子匹配项
(公共成员函数) [编辑]