C++ 正则表达式使用

C++ 11 以后有了正则表达式,对于处理字符串还是很方便的.由于我也再学习.所以下面的内容有可能描述的不准确,这些都是我自己代码中使用的,或者demo测试的.

首先使用正则表达式先要添加头文件

复制代码
#include <regex>

然后编写自己的正则表达式:

例如我想匹配字符串中表示数字的格式,qwetr_11_34_12qwefasdf

我想输出11_34_12这几个字符,我们就可以编辑正则表达式.

cpp 复制代码
std::regex regexStr("\\d{2}_\\d{2}_\\d{2}");

其中\\d表示数字,{}里面表示几个.这样就匹配出对应的字符串了.

cpp 复制代码
	std::sregex_iterator it1(str1Name.begin(), str1Name.end(), regexStr);
	std::sregex_iterator end1;
	std::string str1Data;
	while (it1 != end1)
	{
		std::smatch match = *it1;
		str1Data = match.str();
		++it1;
	}

这样str1Data就输出我们想要的字符串了.

相关推荐
张文是假的啊几秒前
Java | record | Controller逻辑
java·开发语言
不甘先生16 分钟前
Go 中 type、方法与指针接收者:从 str_name.Name() 看懂 Go 的类型系统
开发语言·后端·golang
tudousisi22229 分钟前
CSP 第3题训练 Day 5|CSP202509C HTTP 头信息|Blog A
c++
quantdash_cc1 小时前
Python 股票 K 线数据质量校验:字段、缺失值、重复行和价格异常
开发语言·python·数据分析·量化交易·股票数据·quantdash
Zenova EdgeOS1 小时前
工业网关重试机制:从固定间隔到指数退避的工程实战
开发语言·网络·php
闻缺陷则喜何志丹1 小时前
【动态规划】P10726 [GESP202406 八级] 空间跳跃|普及+
c++·算法·动态规划·洛谷
嘻哈baby2 小时前
Go 函数中的参数为什么不支持默认值?
java·开发语言·jvm
一晌小贪欢2 小时前
python-第29天:Python面向对象之多态与抽象类
开发语言·python·数据可视化·面向对象·python办公·python多态
Chester_19992 小时前
CSP202312C.树上搜索
开发语言·数据结构·c++·蓝桥杯·stl
Figo_Cheung2 小时前
Figo共振网络宇宙演化论(RNC) :从原初对称破缺到全息大和谐的演化路径研究
开发语言·php·量子计算