c++使用正則表達(dá)式提取關(guān)鍵字的方法
更新時(shí)間:2018年08月21日 15:10:33 作者:cplus2009
這篇文章給大家介紹了c++使用正則表達(dá)式提取關(guān)鍵字的方法,相對來說比較簡單,同時(shí)給大家提到了c++通過正則表達(dá)式提取匹配到的字符串的方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
下面看下c++通過正則表達(dá)式提取關(guān)鍵字,代碼如下所示:
string text = "岳云鵬的對象叫鐵錘";
regex pattern("(.*)的對象叫(.*)");
smatch results;
if (regex_match(text, results, pattern)) {
for (auto it = results.begin(); it != results.end(); ++it)
cout << *it << endl;
}
else {
cout << "match failed: " << text << endl;
}
// 岳云鵬的對象叫鐵錘
// 岳云鵬
// 鐵錘
下面看下C++正則表達(dá)式提取匹配到的字符串
/*
* 輸入是789.123.456, 輸出的是789
*/
void get()
{
std::regex ip_reg("(.*)\.123\.456");
std::smatch matchResult;
string inputStr;
std::getline(std::cin,inputStr);
//正則匹配
if (std::regex_match(inputStr,matchResult,ip_reg))
{
cout << "Match: ";
//打印子表達(dá)式結(jié)果
for (size_t i = 1; i < matchResult.size(); ++i)
{
cout << matchResult[i] << " ";
}
}
else
{
cout << "Not Match!";
}
}
總結(jié)
以上所述是小編給大家介紹的c++使用正則表達(dá)式提取關(guān)鍵字的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
strcpy函數(shù)實(shí)現(xiàn)簡示例命分享
這篇文章主要介紹了strcpy函數(shù)實(shí)現(xiàn)簡示例命,需要的朋友可以參考下2014-03-03
C++高級數(shù)據(jù)結(jié)構(gòu)之線段樹
這篇文章主要介紹了C++高級數(shù)據(jù)結(jié)構(gòu)之線段樹,文章圍繞主題的相關(guān)資料展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-05-05
C/C++ 實(shí)現(xiàn)簡易HTTP服務(wù)器的示例
這篇文章主要介紹了C/C++ 實(shí)現(xiàn)簡易HTTP服務(wù)器的示例,幫助大家更好的理解和學(xué)習(xí)C/C++編程,感興趣的朋友可以了解下2020-10-10
C語言深入探究sizeof與整型數(shù)據(jù)存儲及數(shù)據(jù)類型取值范圍
在main函數(shù)中,sizeof是可以正常工作的,但是在自定義函數(shù)中就不可以了。所以本文將為大家詳細(xì)講解一下關(guān)鍵字sizeof、整型數(shù)據(jù)存儲深入、數(shù)據(jù)類型取值范圍深入2022-07-07

