regex_search()和getline(cin,str)函数,以及对其中正则表达式的解释
2016-03-08 11:52
856 查看
#include<iostream> #include<regex> #include<string> using namespace std; int main(int argc, char argv[]) { //进行注释语句的匹配 regex r("//\\s*(.+)"); //注释正则表达式: //1://为注释语句中的“//” //2:\\s为空格,换行符,制表符等 //3:\\s*为有0个或者多个空格,换行符,制表符等 //4:(.+)该语句可匹配对个字符,数字等,其中.相当于是通配符(大小写字母,数字等) while (true) { cout << "输入注释语句(q=quit):"; string str; //getline(cin,str)该函数的原型是 ifstream& getline(istream& in,string& str) //特德返回值是in,是一个引用,不可能是NULL(所以!getline(cin,str)恒为true) //所以如果是if(!getline(cin,str))是不可以的 应该换成str=="" getline(cin, str); if (str==""|| str == "q") { break; } smatch sm; if (regex_search(str, sm, r)) { cout << "find string:" << sm[1] << endl; } else { cout << "no find" << endl; } } return 0; }
相关文章推荐
- iOS 自有地图
- 数据结构与算法学习笔记(四)
- 详解Linux系统中的进程初始化配置文件inittab
- HQL String转Int , SQL String转Int
- 解决VMware虚拟机中 windows 7 的屏幕闪烁问题
- 一道关于JavaScript变量作用域的面试题
- git 常用命令
- notifyAll()唤醒线程时与什么有关
- JEasyUI: Create endless progressbar
- web网站架构演变过程
- URDF通用机器人格式化描述文件学习笔记
- @property中有哪些属性关键字?/ @property 后面可以有哪些修饰符?
- signal 在C++中错误提示 argument of type
- 好用又美观的时间控件
- Handler消息传递机制
- PowerDesigner连接MySQL,建立逆向工程图解
- 给自己找了个免费的ss
- 清楚浮动的方式总结(第二篇)
- Web前端开发-4
- ViewDragHelper实战应用之 高仿微信双向侧滑退出Activity