アルゴ式(beta版)の「正規表現 (beta)」エスケープ文字からの出典です。
algo-method.com
アルゴ式とは...
>・プログラミングや情報科学をコツコツ学べる「教科書」
>・学んだ内容をゲーム感覚で大量に実践できる「練習問題」
>の2つで構成される、Web上で完結した学習コンテンツです。
正規表現 2-1
/* C++による「正規表現 (beta)」エスケープ文字の解答例 正規表現 2-1 https://algo-method.com/tasks/297 提出コードの解答例 https://neguse-atama.hatenablog.com */ #include<bits/stdc++.h> using namespace std; int main(void){ string s; cin>>s; if(s.find("1+1")==string::npos){ cout<<"No"<<endl; }else{ cout<<"Yes"<<endl; } return 0; }
・正規表現 2-2
/* C++による「正規表現 (beta)」エスケープ文字の解答例 正規表現 2-2 https://algo-method.com/tasks/338 提出コードの解答例 https://neguse-atama.hatenablog.com */ #include<bits/stdc++.h> using namespace std; int main(void){ string s; cin>>s; regex reg{R"(\(.+\))"}; smatch TF; bool tf=regex_search(s,TF,reg); if(tf){ cout<<"Yes"<<endl; }else{ cout<<"No"<<endl; } return 0; }
・正規表現 2-3
/* C++による「正規表現 (beta)」エスケープ文字の解答例 正規表現 2-3 https://algo-method.com/tasks/340 提出コードの解答例 https://neguse-atama.hatenablog.com */ #include<bits/stdc++.h> using namespace std; int main(void){ string s; cin>>s; regex reg{R"(^([a-z]+\-)*[a-z]+$)"}; smatch TF; bool tf=regex_search(s,TF,reg); if(tf){ cout<<"Yes"<<endl; }else{ cout<<"No"<<endl; } return 0; }
設問の出典は、情報科学をコツコツ積み立てて学習できるサービス「アルゴ式(beta版)」です。
algo-method.com