名前空間
変種
操作

std::sub_match<BidirIt>::length

From cppreference.com
< cpp‎ | regex‎ | sub match
 
 
 
正規表現ライブラリ
クラス
(C++11)
アルゴリズム
イテレータ
例外
Traits
定数
(C++11)
正規表現文法
 
 
difference_type length() const;

マッチ内の文字数を返します。

[編集] 戻り値

std::distance(first, second) マッチが有効な場合、それ以外の場合は 0

[編集] 計算量

定数。

[編集]

#include <iostream>
#include <regex>
#include <string>
 
int main()
{
    std::string sentence{"Quick red fox jumped over a lazy cow."};
    const std::regex re{"([A-z]+) ([a-z]+) ([a-z]+) ([a-z]+)"};
    std::smatch words;
    std::regex_search(sentence, words, re);
    for (const auto& m : words)
        std::cout << '[' << m << "], length = " << m.length() << '\n';
}

出力

[Quick red fox jumped], length = 20
[Quick], length = 5
[red], length = 3
[fox], length = 3
[jumped], length = 6
English 日本語 中文(简体) 中文(繁體)