regex_replace()函数的应用与解析

2023-11-19

#include<string>
#include<regex>
#include<iostream>
using namespace std;
int main(int argc, char argv[])
{
	string str = "this is a subsquence in the string";
	regex reg("(sub)([\\w]+)");
	//该正则表达式匹配sub开头的子字符串
	//regex_replace(std::string str,std::regex reg,std::string replace)为regex_replace()六中格式中的一种
	//他的返回值是std::string,所以在下面的语句中可以输出,执行替换规则之后的string
	cout << regex_replace(str, reg, "sub-$2") << endl;
	//更换匹配规则
	cout << regex_replace(str, reg, "$2") << endl;
	//regex_replace()有六中不同的重载函数,在这里书写的是regex_replace(OutIterator out,std::string str.begin(),
	//std::string str.end(),std::regex reg,std::string format)
	//在该函数中,匹配结果最终存入OutIterator out中
	string result;
	regex_replace(back_inserter(result), str.begin(), str.end(), reg, "$1 and $2");
	//back_inserter()的作用相等于是string::push_back(),将匹配之后的结果输入到result中
	//他的返回值是back_inserter_iterator
	cout << result << endl;
	cout << regex_replace(str, reg, "$2", regex_constants::format_no_copy) << endl;
	//在该函数语句中regex_constants::format_no_copy的意义是在匹配之后的结果中,只有替换的部分
	//在该函数中是会输出第二个捕捉组的内容,而不包含其他的内容
	return 0;
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

regex_replace()函数的应用与解析 的相关文章

  • 10个好用又有趣的工具类网站,赶快收藏吧

    YwTools 工具集合 www ywcoding com YwTools是一个提供许多有趣小工具的网站 这些工具能够为用户提供方便 快捷的支持 它提供许多实用性工具 比如生产力工具 免注册流程图 文本对比去重 编程类工具比如文本解码编码
  • Shell中正则表达式

    1 正则表达式介绍 1 正则表达式 通常用于判断语句中 用来检查某一字符串是否满足某一格式 2 正则表达式是由普通字符与元字符组成 3 普通字符包括大小写字母 数字 标点符号及一些其他符号 4 元字符是指在正则表达式中具有特殊意义的专用字符
  • 用Matlab作函数的图像

    函数简介 1 作图函数是plot 其调用格式如下 plot y plot x y plot x y LineSpec plot x1 y1 s1 x2 y2 s2 x3 y3 s3 说明 1 plot y 绘出以向量y为纵坐标 y的个元素的
  • DNF管理软件包

    DNF是一款Linux软件包管理工具 用于管理RPM软件包 DNF可以查询软件包信息 从指定软件库获取软件包 自动处理依赖关系以安装或卸载软件包 以及更新系统到最新可用版本 DNF与YUM完全兼容 提供了YUM兼容的命令行以及为扩展和插件提
  • Python---正则表达式

    专栏 python 个人主页 HaiFan 专栏简介 Python在学 希望能够得到各位的支持 正则表达式 前言 概念 作用和特点 使用场景 正则符号 re模块 re compile match search span findall gr
  • 正则表达式中.*的作用

    今天看正则表达式的书籍是看到这么个例子 要求匹配 文章中的xml 匹配使用的正则表达式为 lt xml gt 一开始没有理解 是做什么用处的 百度了一番后明白了 原来 中 代表任意单个字符 包括空格 代表前面任意单个字符的重复次数 因此 l
  • Day 13 - 正则表达式习题

    利用正则表达式完成下面的操作 1 用户名匹配 要求 1 用户名只能包含数字 字母 下划线 2 不能以数字开头 3 度在 6 到 16 位范围内 re username re compile r a zA Z w 5 15 print re
  • JAVA中正则表达式的使用

    正则表达式 用法 一 使用正则表达式对String进行匹配 1 控制匹配长度 1 使用 n 来精确控制 2 使用 n 表示大于等于n个 3 使用 m n 控制范围 4 使用 表示可以出现 0次或一次 5 使用 表示可以出现 0次或多次 6
  • Jmeter参数化--后置处理器之正则表达式提取器

    在接口测试中 很多都需要依赖前一个请求的响应数据放到后一个请求的请求数据中来 在Jmeter中提供了正则表达式提取器来提取响应数据中的片段 本次使用的实例是微信公众号的客服发消息 在这个接口中 需要用到access token接口返回的to
  • 常用js

    1 去掉字符串两端的空格 对字符串去两端空格 function stringTrim str if str null str undefined return null 用正则表达式将前后空格 用空字符串替代 return str repl
  • 38 匹配字符串——findall()方法

    文章目录 语法 案例 语法 findall 方法用于在整个字符串中搜索所有符合正则表达式的字符串 并以列表的形式返回 如果匹配成功 则返回包含匹配结构的列表 否则返回空列表 findall 方法的语法格式如下 re findall patt
  • Pattern.compile的flag参数

    Pattern compile函数 Pattern Pattern compile String regex int flag regex为正则表达式 flag的取值范围如下 Pattern CANON EQ 当且仅当两个字符的 正规分解
  • Java正则表达式详解

    1 1 正则表达式的概念以及演示 正则表达式可以用一些规定的字符来制定规则 并用来校验数据格式的合法性 正则表达式就是用来验证各种字符串的规则 它内部描述了一些规则 我们可以验证用户输入的字符串是否匹配这个规则 正则表达式是一种强大的校验机
  • 对字符串进行正则取子串

    题目是这样的 对一段HTML网页内容 解析出其中所有的键值对 比如其中type text type为属性 text为值 二者为一个键值对 内容如下
  • js常用正则表达式 匹配多个汉字、数字、英文、所有字符(附带Layui中form的表单验证)

    常用正则表达式 转自 菜鸟工具 https c runoob com front end 854 一 校验数字的表达式 数字 0 9 n位的数字 d n 至少n位的数字 d n m n位的数字 d m n 零和非零开头的数字 0 1 9 0
  • Java正则校验密码至少包含:字母数字特殊符号中的2种

    一 语法 字符 说明 将下一字符标记为特殊字符 文本 反向引用或八进制转义符 例如 n匹配字符 n n 匹配换行符 序列 匹配 匹配 匹配输入字符串开始的位置 如果设置了 RegExp 对象的 Multiline 属性 还会与 n 或 r
  • 【按照年月去统计信息并分类展示】

    1 前言 需求是需要将历史订单按照年月分类展示 并展示汇总值 由于后端返回的是数组的数据 并没有将数据做好统计分类 出于对自己的自信以及不想给别人添麻烦的信息 然后自己写了一下处理的方法 然后放上最后的效果图吧 2 代码实现 按照月份统计每
  • JS字符串替换函数全部替换方法

    color olive JS字符串替换函数 Replace 字符串1 字符串2 1 我们都知道JS中字符串替换函数是Replace 字符串1 字符串2 但是这个函数只能将第一次出现的字符串1替换掉 那么我们如何才能一次性全部替换掉了 将上面
  • Java 正则表达式工具类大全

    import java util regex Matcher import java util regex Pattern author nql Description 验证工具类 date now public class Validat
  • grep的用法

    命令介绍 Linux系统中grep命令是一种强大的文本搜索工具 它能使用正则表达式搜索文本 并把匹配的行打印出来 匹配到的标红grep全称是Global Regular Expression Print 表示全局正则表达式版本 它的使用权限

随机推荐

  • Kotlin核心编程(七)

    Kotlin核心编程 七 文章目录 Kotlin核心编程 七 多继承问题 接口实现多继承问题 getter和setter 内部类解决多继承问题 内部类和嵌套类 使 委托代替多继承 数据类 Pair和Triple 数据类的约定与使 多继承问题
  • Java设计模式-装饰者模式Decorator

    介绍 装饰者模式的核心思想是通过创建一个装饰对象 即装饰者 动态扩展目标对象的功能 并且不会改变目标对象的结构 提供了一种比继承更灵活的替代方案 需要注意的是 装饰对象要与目标对象实现相同的接口 或继承相同的抽象类 另外装饰对象需要持有目标
  • mobaxterm无法连接vmware虚拟机服务器,network error:connection refused

    场景描述 电脑硬盘换了 重新安装vmware ubuntu mobaxterm 安装完ubuntu后 因为习惯了无UI的界面 所以关闭了ubuntu的桌面服务 有需要的同学可以通过sudo systemctl set default mul
  • 【Java基础】 使用POI解析excel时格式判定问题及解决方案

    写在前面 本文主要介绍在实际开发过程中使用POI工具类去解析Excel格式文件遇到的问题引发的思考 学习以及解决方案 仅供参考 有考虑不周的地方还请指正 问题描述 博主在做excel解析的时候 遇到了一个奇怪的现象 xlsx拓展名的文件使用
  • Struts2知识汇总二

    Struts2中的调试 在Struts2中可以使用
  • java8 stream流排序

    原文出处 https www cnblogs com kuanglongblogs p 11230250 html 很多情况下sql不好解决的多表查询 临时表分组 排序 尽量用java8新特性stream进行处理 使用java8新特性 下面
  • Android PowerSupply (三)power_supply_sys

    目录 Android PowerSupply 一 总概 Android PowerSupply 二 power supply core Android PowerSupply 三 power supply sys Android Power
  • 深入理解ES6箭头函数中的this

    简要介绍 箭头函数中的this 指向与一般function定义的函数不同 比较容易绕晕 箭头函数this的定义 箭头函数中的this是在定义函数的时候绑定 而不是在执行函数的时候绑定 1 何为定义时绑定 我们来看下面这个例子 1 var x
  • UNIX环境高级编程读书笔记

    主要记录关键知识点 方便日后查阅 第一章 UNIX基础知识 UNIX体系结构 书中是这样画的 这篇文章认为这样画不合理https blog csdn net lyndon li article details 116956043 应该这样
  • jsp页面兼容谷歌浏览器相关问题

    1 js按键事件兼容 function document oncontextmenu ie8可运行 谷歌改为function document onkeydown 2 触发事件对象 IE浏览器支持window event srcElemen
  • [附源码]java+ssm计算机毕业设计java儿童福利院管理系统5d7wb【源码、数据库、LW、部署】

    项目运行 项目含有源码 文档 程序 数据库 配套开发软件 软件安装教程 环境配置 Jdk1 8 Tomcat7 0 Mysql HBuilderX Webstorm也行 Eclispe IntelliJ IDEA Eclispe MyEcl
  • 变度量法算法(DFP)求解无约束问题

    程序功能 1 变度量法算法 DFP 求解无约束问题 2 调用文件夹下Newton的子函数 nfx ndfx ndfx2 vectorLength 3 z3 A i b 计算当前d的值 矩阵计算可能存在奇异值 4 请根据不同的目标函数 设置精
  • android- Cause: Unknown command-line option '-X'.

    问题太简单了 直接解决办法 File gt Settings gt Build Execution Deployment gt Compiler 删除Command line options里面的内容 重新gradle 感谢博主 欢迎留言指
  • 全栈之前端

    欢迎关注 全栈工程师修炼指南 公众号 点击 下方卡片 即可关注我哟 设为 星标 每天带你 基础入门 到 进阶实践 再到 放弃学习 花开堪折直须折 莫待无花空折枝 作者主页 https www weiyigeek top 博客 https b
  • 2022面试题汇总

    目录 浏览器下两个页面的通讯都有什么方式 使用css与js做一个九宫格动画 请输出如下的代码打印结果 js如何实现页面地址发生变化 但页面不发生跳转 请用js实现 请用多种方式实现垂直居中 实现的方式越多越好 请实现一个getValue函数
  • 【深度学习】全面直观认识深度神经网络

    01深度学习的精准定义 一类通过多层非线性变换对高复杂性数据建模算法的集合 它的两个非常重要的特征是多层性和非线性 俗称多层非线性变换 所以深度学习要去线性化 为什么呢 因为线性模型存在局限性 任意线性模型得到组合仍然还是线性模型 所以只要
  • Linux如何找回或者重置root用户密码

    欢迎参与个人独立开发的阅时即查web APP公测 请扫码体验 第一个为旧版 第二个为2019年6月版 在Linux这样一个权限管理严格 系统安全性要求高的环境中 根用户 超级用户 root的的密码显得十分重要 但是还是有一些马大哈会忘记自己
  • 【LLM】深入剖析 GOOGLE PALM 2:全面概述

    大家好 我是Sonhhxg 柒 希望你看完之后 能对你有所帮助 不足请指正 共同学习交流 个人主页 Sonhhxg 柒的博客 CSDN博客 欢迎各位 点赞 收藏 留言 系列专栏 机器学习 ML 自然语言处理 NLP 深度学习 DL fore
  • 用一维字符数组存放字符串

    一 用一维字符数组存放字符串 1 C语言对字符串的约定 字符串是借助于字符型一维数组来存放的 并规定以字符 0 作为字符串的结束标志 0 作为标志占用存储空间 但不计入串的实际常量 2 C语言中表示字符串常量的约定 虽然c语言中没有字符串数
  • regex_replace()函数的应用与解析

    include