std::match_results::size() 回傳什麼?
在 C 11 中, std::match_results::size( )函數傳回符合結果物件中擷取群組的數量加一(整個符合
考慮以下程式碼:
<code class="cpp">#include <iostream> #include <string> #include <regex> int main() { std::string haystack("abcdefabcghiabc"); std::regex needle("abc"); std::smatch matches; std::regex_search(haystack, matches, needle); std::cout << matches.size() << std::endl; }</code>
此程式碼尋找字串「abcdefabcghiabc」中第一次出現的子字元串“abc”,並將匹配結果儲存在matches 物件中。 3(預期的匹配數)。沒有捕獲組,因此size() 返回1(僅完全匹配)。字串)。的範例:
此程式碼迭代字串中「abc」的所有符合項目並對其進行計數。 🎜>如果您的正規表示式包含捕獲組(帶括號的子表達式),則匹配結果的大小也會包括捕獲組。式,且輸入字串包含“abcdef”,則符合結果的大小將為2(完全符合並捕獲群組“def”)。
以上是C 中 std::match_results::size() 傳回多少項?的詳細內容。更多資訊請關注PHP中文網其他相關文章!