C++正则表达式;regex
程序员文章站
2022-07-09 22:33:24
有时候我们在开发项目的时候会用到正则表达式,
在PHP中写正则很简单
但是在C++中就变得复杂了点
想找个正则的小案例
看了别人写的关于regex的博客大都写的特别复杂...
有时候我们在开发项目的时候会用到正则表达式,
在PHP中写正则很简单
但是在C++中就变得复杂了点
想找个正则的小案例
看了别人写的关于regex的博客大都写的特别复杂
最后还是老老实实看MSDN终于搞懂了
如果没有耐心看msdn可以看下面我整理的这个小案例
#include "stdafx.h" #include#include using namespace std; int main() { string str = "Hello World"; regex cmd("(Hel)(.*)"); //返回时候匹配成功 if (regex_match(str, cmd)) cout << "匹配成功" << endl; regex cmd1("Hel[a-zA-Z]+"); smatch a; //存放匹配的字符串 regex_search(str,a,cmd1); //获得匹配的字符串 for (auto x : a) cout << x << endl; regex cmd2("Hel[a-zA-z]+"); cout << regex_replace(str, cmd2, "World") << endl; return 0; }
其实C++的正则表达式记住这三个函数就好了
regex_match(str, cmd) //返回是否匹配成功 regex_search(str,a,cmd1) //获得匹配的字符串 regex_replace(str, cmd2, "World") //替换字符串