c++: string 的函数replace()用法

第5天----单词替换(C++replace()函数) 该字符串由若干个单词组成,单词之间用一个空格隔开,所有单词区分大小写。现需要将其中的某个单词替换成另一个单词,并输出替换之后的字符串。我们将单词a替换成单词b时可以把单词b装住,也可以直接输出,但我用的是装住的方法,输出时记得加空格。题目是让我们把一个单词替换成另一个单词,也就是字符串,并不是单个字符的替换,所以我们不妨试试字符数组。最后只要判断数组中每个单词是不是要替换的单词,如果是,输出想要替换的单词,不是就直接输出。题意:将一行字符串中的某个单词替换成指定单词(被替换的单词可能有多个)。 阅读详情

basic_string::max_size

返回string 能放的最大元素个数。(不同于capacity)

size _ type max _ size( ) const;

basic_string <char>::size_type cap, max;

cap = s.capacity ( );

max = s.max_size ( ); // max=4294967294.

basic_string::rfind

寻找给定的string。返回找到的第一个string 下标值;如果没找到则返回npos。

与find 不同的是:rfind 默认从npos 开始找。其他相同。

basic_string::replace

将原string 中的元素或子串替换。返回替换后的string。

(1)用string 或C-string 代替操作string 中从 _Pos1 开始的 _Num1 个字符

basic _ string& replace( size _ type _Pos1 ,size _ type _Num1 , const value _ type* _Ptr );

basic _ string& replace(size _ type _Pos1 ,size _ type _Num1 ,const basic _ string _Str );

string a,b;

string s ( "AAAAAAAA" );

string s1p ( "BBB" );

const char* cs1p = "CCC" ;

a = s.replace ( 1 , 3 , s1p ); // s= ” ABBBAAAA ”

b = s.replace ( 5 , 3 , cs1p ); // s= ” ABBBACCC ”

(2)用string 中从 _Pos2 开始的 _Num2 个字符,代替操作string 中从 _Pos1 开始的 _Num1 个字符

用C-string 中的 _Num2 个字符,代替操作string 中从 _Pos1 开始的 _Num1 个字符

basic _ string& replace( size _ type _Pos1 , size _ type _Num1 , const basic _ string& _Str ,

size _ type _Pos2 , size _ type );

basic _ string& replace( size _ type _Pos1 , size _ type _Num1 ,

const value _ type* _Ptr , size _ type _Num2 );

string a, b;

string s ( "AAAAAAAA" );

string s2p ( "BBB" );

const char* cs2p = "CCC";

a = s.replace ( 1 , 3 , s2p , 1 , 2 ); // s= ” ABBAAAA ”

b = s.replace ( 4 , 3 , cs2p , 1 ); // s= ” ABBAC ”

(3)用 _Count 个character _Ch , 代替操作string 中从 _Pos1 开始的 _Num1 个字符

basic _ string& replace( size _ type _Pos1 , size _ type _Num1 ,

size _ type _Count , value _ type _Ch );

string result;

string s ( "AAAAAAAA" );

char ch = 'C';

result = s.replace ( 1 , 3 , 4 , ch ); // s= ” ACCCCAAAA ”

(4)用string 或C-string ,代替操作string 中从 First0 到 Last0 的字符

basic _ string&replace(iterator First0 ,iterator Last0 , const basic _ string& _Str );

basic _ string&replace(iterator First0 ,iterator _Last0 , const value _ type* _Ptr );

string s ( "AAAAAAAA" ); string s4p ( "BBB" );

const char* cs4p = "CCC";

basic_string<char>::iterator IterF0, IterL0;

IterF0 = s.begin ( ); IterL0 = s.begin ( ) + 3;

string a, b;

a = s.replace ( IterF0 , IterL0 , s4p ); // s= ” BBBAAAAA ”

b = s.replace ( IterF0 , IterL0 , cs4p ); // s= ” CCCAAAAA ”

(5)用string 中从 _Pos2 开始的 _Num2 个字符,代替操作string 中从 First0 到 Last0 的字符

用C-string 中的 _Num2 个字符,代替操作string 中从 First0 到 Last0 的字符

basic _ string& replace( iterator _First0 , iterator _Last0 ,

const value _ type* _Ptr , size _ type _Num2 );

template<class InputIterator> basic _ string& replace(

iterator _First0 , iterator _Last0 ,

InputIterator _First , InputIterator _Last );

IterF3 = s.begin ( ) + 1; IterL3 = s.begin ( ) + 3;

IterF4 = s.begin ( ); IterL4 = s.begin ( ) + 2;

a = s.replace ( IterF3 , IterL3 , IterF4 , IterL4 );

b = s.replace ( IterF1 , IterL1 , cs5p , 4 );

(6)用 _Count 个character _Ch , 代替操作string 中从 First0 到 Last0 的字符

basic _ string& replace( iterator _First0 , iterator _Last0 ,

size _ type _Count , value _ type _Ch );

a = s.replace ( IterF2 , IterL2 , 4 , ch );

basic_string::swap

交换两个string。

void swap( basic _ string& _Str );

s1.swap ( s2 );

basic_string::substr

返回从 _Off ( 下标)开始的 _Count 个字符组成的string

basic _ string substr( size _ type _Off = 0, size _ type _Count = npos ) const;

string s("I love you!") , sub;

sub=s.substr( ); // sub= ” I love you! ”

sub=s.substr(1); // sub= ” love you! ”

sub=s.substr(3,4); // sub= ” ove ”

来源: http://www.cnblogs.com/8586/archive/2008/07/16/1243971.html 


C++中replace()函数使用方法汇总 主要介绍了C++中replace()函数使用方法汇总,在这篇文章中为大家详细介绍C++ replace()函数的各种应用方式,希望朋友们可以从这里介绍的内容充分掌握这一应用技巧。 立即下载

相关推荐

stm32f103c8t6的中文字库

stm32的成熟中文字库,上手即用,操作简单

nbbskk的博客 3652

C++STL string容器:字符串查找和替换、比较、存取、插入和删除、子串获取

C++STL string容器:字符串查找和替换、比较、存取、插入和删除、子串获取 代码展示与总结 子串获取的实用操作

UUUUU22的博客 9767

Materials Studio实战技巧(八)——利用片段库高效构建有机金属配合物

本文详细介绍了在Materials Studio中利用Fragment Browser(片段浏览器)高效构建有机金属配合物的实战技巧。通过调用预置的Metal Templates和Ligands库,用户可以快速搭建如茂金属催化剂等复杂分子骨架,并利用对称性操作精确控制Meso与Rac构型。文章还涵盖了自定义片段库的创建与使用,能显著提升建模效率,适用于计算化学与材料模拟领域的研究者。

wine的专栏 934

C++string类replace()函数(替换字符串中的子串)

其中,pos表示要替换的子串在原字符串中的起始位置,len表示要替换的子串的长度,str表示用来替换的字符串。replace()函数的使用方法非常简单,只需要传入要替换的子串的位置、长度和替换字符串即可。在上面的示例中,将字符串中的"hello"替换为"hi",得到了"hi world"这个新的字符串。C++中的string类提供了replace()函数,用于替换字符串中的子串。

Dontla的博客 3万+

《哥谭神话-工程篇》01.Palantir 平台架构解析-混乱数据如何转化唯一真相源?

Palantir 平台的架构哲学可以概括为将洞察落地为行动,其核心是将“获取唯一真相”能力深度嵌入现有的、复杂的工作流程中,成为提升运营效率和决策质量的倍增器。

895

粒子群算法Particle Swarm Optimization超详细解析+代码实例讲解

粒子群算法,也称粒子群优化算法或鸟群觅食算法(Particle Swarm Optimization),缩写为 PSO, 是近年来由J. Kennedy和R. C. Eberhart等开发的一种新的进化算法(Evolutionary Algorithm - EA)。

猫敷雪 891

C++ string中的replace函数详解

##C++ string中的replace函数详解 1.应用一:string &replace(size_t pos,size_t len,const &str)被替换位置(pos往后len个字符) 2.应用二:string &replace(size_t pos,size_tlen,const string &str,size_t subpos,size_t su...

weixin_39583140的博客 2万+

ESD防护设计宝典(十):RE(辐射发射)超标问题排查与解决

RE测试是EMC认证的“头号杀手”。当屏幕上出现一根根超标频谱线时,如何快速定位元凶并有效整改?本讲将带你化身电磁侦探,完成一次完美的RE问题“缉凶”。

m0_56451176的博客 392

c++中string 的replace用法

/*用法一: *用str替换指定字符串从起始位置pos开始长度为len的字符 *string& replace (size_t pos, size_t len, const string& str); */ int main() { string line = "this@ is@ a test string!";

伯爵的专栏 10万+

CloudCompare 二次开发(41)——点云重建三维凸包并计算体积

本文介绍了如何结合PCL与CloudCompare实现点云三维凸包的构建与可视化。通过代码集成,在CloudCompare界面添加功能按钮,实现点云数据转换、凸包构建、体积计算以及可视化显示。具体步骤包括:1) 在UI中添加功能按钮;2) 将点云数据转换为PCL格式;3) 使用PCL的ConvexHull算法构建三维凸包;4) 计算并显示凸包体积;5) 将结果以点云和网格形式可视化显示。最终实现了点云凸包的自动构建与体积计算功能,为点云处理提供了实用工具。

点云侠的博客 192

LSTM+Transformer混合模型时间序列预测实战教学

LSTM+Transformer混合模型时间序列预测实战教学 毕业设计

8218

[C++] string类的字符串替换replace()方法及扩展应用详述

引言: C++的string库提供了专门的函数方法来实现字符串的替换:string.replace() 但是这个函数将源字符串中某个字符串只替换了一次,string类并没有实现对于源字符串中的某个字符串全部替换。 介绍: 在C++11标准中string::replace的原型有下面几种,但是常用的就前面3种,因此理解掌握前3种即可。 实践: replace函数包含于头文件#includ...

DreamShadow的博客 2万+

30分钟用 Restful ABAP Programming(RAP)模型开发一个支持增删改查的 Fiori 应用

2016年时,Jerry曾经写过一系列关于SAP Fiori Smart Template(现在更名为Fiori Elements了)的博客,介绍了所谓的MDD开发方法论 - Metadata Driven Development,即通过开发维护了对应annotation(注解)的CDS view,结合SAP WebIDE,能够花费最少的编程代价,就能够在短时间内获得一个支持增删改查的Fiori应......

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 5947

c++ string 的函数replace()用法

c++ string 的函数replace()用法 - 浪端之渡鸟 - 博客园 (cnblogs.com)

dlxt99的博客 1293

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

[转] c++ string 的函数replace()用法

【原帖地址】 basic_string::max_size 返回string 能放的最大元素个数。(不同于capacity) size _ type max _ size( ) const; basic_string <char>::size_type cap, max; cap = s.capacity ( ); max = s.max_si...

weixin_30505485的博客 407

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

C++中String常见函数

string常见操作

weixin_68539386的博客 1013

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

C++ string类用法总结 ——墨白

自从大家开始学习C++,相信不少朋友都注意到了C++的这个新特性(相较于C)。有人说要想学习C++就要先忘掉C,博主本人并不完全赞成这种说法,但学习C++的过程中确实要改变一些以前学C的习惯,string类(型)无疑是C++的大亮点之一,有了string类(型),我们再也不用用C中string.h中的那堆以str开头的函数了(C++里头文件是cstring).下面就string类(型)做几点说明。...

正直 的博客 461

string::size_type、string::npos、 string::substr、string::find_first_of、string::replace、string::assign

string::size_type、string::npos、 string::substr、string::find_first_of、string::replace、string::assign

森明帮大于黑虎帮的博客 625

C++ String的进阶操作II

前边说的都是string类的构造函数 下面这些是用于string操作的库函数 substr()//主要功能是复制子字符串,要求从指定位置开始,并具有指定的长度。 append() //方法在被选元素的结尾(仍然在内部)插入指定内容。提示:如需在被选元素的开头插入内容,请使用prepend()方法。 replace()//该函数返回一个字符串,其中指定的字符串已经被替换为另一字符串,并且替换的次数也可以指定。 代码实例: #include <iostream> #include <stri

Algorithm___的博客 294

C++语言string类的相关函数

C++语言string类的相关函数 一、string的长度、容量 返回字符串对象的长度 1. size() 2. length() 返回已经分配给字符串对象的长度(容量) 3. capacity() 返回字符串能够存储的最大长度的字节数 4. max_size() string str("Test string"); cout<<str.size(); cout<<str.length(); cout<<str.capacity(); cout<<str.ma

m2426675454的博客 368

C++ 中 string 用法详解

一、字符串及区别 (1)字符串 字符串是表示字符序列的对象。标准字符串类(string)通过类似于标准字节容器的接口为这些对象提供支持,但添加了专门设计用于使用单字节字符串操作的功能。 该字符串类(string)是一个实例的basic_string类模板使用字符(即字节)作为其类型,其默认char_traits和分配器类型(见basic_string的更多信息的模板)。 请注意,此类(st...

一丁的博客 2629
上一篇: VS配置路径和宏
下一篇: TinyXml 修改指定节点和增加节点的做法
berkshirman
博客等级 码龄19年 41粉丝 41原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值