5
我在C++中使用Boost的正則表達式來匹配多行字符串中的行。正則表達式搜索找到第一個匹配,但是我對匹配的最後一行感興趣。用Boost :: Regex獲取最後一場比賽
我現在使用的代碼是這樣的:
matched = boost::regex_search(input, results, regex);
if (!matched) {
return -1; // error code
}
matched_string = results["Group"];
如果regex
是"(?<Group>Data.)"
和input
是"Data1 Data2 Data3"
,然後matched_string
現在"Data1"
。我希望它是"Data3"
。
使用'smatch :: const_reference r = results [「Group」]'應該避免一些不必要的複製。 – maxschlepzig 2012-03-21 08:32:19