码迷,mamicode.com
首页 > 编程语言 > 详细

c++ 正则表达式

时间:2018-08-29 14:43:08      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:序列   class   pre   strong   c++   结果   信息   ++   while   

正则表达式在对大量字符串的提取有效信息,所支持的头文件#include <regex>

      regex_match:将一个字符序列与一个正则表达式匹配
      regex_search:寻找第一个与正则表达式匹配的子序列
      regex_replace:使用给定格式替换一个正则表达式
      sregex_iterator:迭代器适配器,调用regex_search来遍历一个string中所有匹配的字串
 这里要注意的是\b这种在输入时要变成\\b,这里的+代表一直找\d知道遇到 ‘.‘(如果我们只想找n个数字只需要把+换{n}即可),{1}代表着上面的组只循环一次
循环搜索:
	string test = "145341.35186410.200034uhvsv nfji7676876///1324531.1";
	smatch mat;
	regex rgx("(\\d+\\.){1}");
	string::const_iterator start = test.begin();
	string::const_iterator end = test.end();
	
	while (regex_search(start, end, mat, rgx))
	{
		cout << mat[1].str() << endl;
		start = mat[0].second;
	}

 输出结果:循环输出 

c++ 正则表达式

标签:序列   class   pre   strong   c++   结果   信息   ++   while   

原文地址:https://www.cnblogs.com/yskn/p/9552530.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!