字符串中符号的替换---replace的用法
#include<iostream>
#include<string> using namespace std; int main()
{
string s1 = "one*two*three";//Given String
string s2 = "*";//delimeter
string s3 = ",";//string to replace cout << "s1 = " << s1 << endl;//Original String before replace bool flag = true;
while(flag)
{
size_t found = s1.find(s2);//Stores the size of the string by using find() function
if(found != string::npos)//its check until the 'n' of the occurence in the given string.
{
s1.replace(found, s2.length(), s3);//Replace the string using the replace() function
}
else
{
flag = false;
}
}
cout << "s1 = " << s1 << endl;//After replacing the string return ;
}
运行结果:
aaarticlea/png;base64,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" alt="" />
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 ( , , s1p ); // s= ” ABBBAAAA ” b = s.replace ( , , 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 _Num2 );
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 ( , , s2p , , ); // s= ” ABBAAAA ” b = s.replace ( , , cs2p , ); // 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 ( , , , 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 );
字符串中符号的替换---replace的用法的更多相关文章
- 将一个字符串中的空格替换成“%20”(C、Python)
将一个字符串中的空格替换成“%20” C语言: /* ----------------------------------- 通过函数调用,传地址来操作字符串 1.先计算出替换后的字符串的长度 2.从 ...
- 《剑指offer面试题4》替换空格——实现函数把字符串中每个空格替换成“%20”
思路: 例如把we are happy这个字符串中所有空格替换成"%20",最直接的做法是从头开始扫苗,遇到空格就替换,并且把空格后面的字符都顺序后移.复杂度O(n^2). 重要思 ...
- 《剑指offer》字符串中的字符替换
一.题目描述 请实现一个函数,将一个字符串中的空格替换成"%20".例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy. 二.输入描 ...
- 把字符串中的空格替换为"%20"
这个需要注意的是字符串的结尾最后一个字符为'\0',并不是空字符,复制时要一块复制,算法思想就是先计算出字符串中总的空格数,然后 重新计算字符串的长度,由于"%20"为3个字符,比 ...
- [LeetCode] Find And Replace in String 在字符串中查找和替换
To some string S, we will perform some replacement operations that replace groups of letters with ne ...
- 符号替换问题:请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
public class Solution { public String replaceSpace(StringBuffer str) { String str1=str.toString(); c ...
- tr 命令 操作字符串中字符 删除替换 等
ip=$(cat ${path}initOauth/initinfo.txt |awk '{if(NR==1)print $0;}'|tr -d '\r'); tr命令可以对来自标准输入的字符进行替换 ...
- FZU 2122 又见LKity【字符串/正难则反/KMP/把一个字符串中某个部分替换为另一个部分】
嗨!大家好,在TempleRun中大家都认识我了吧.我是又笨又穷的猫猫LKity.很高兴这次又与各位FZU的ACMer见面了.最近见到FZU的各位ACMer都在刻苦地集训,整天在日光浴中闲得发慌的我压 ...
- 编程练习 将一个字符串中的空格替换为 "%20"
重点:字符串和元组一样, 是不可变对象. 所以将创建一个新的字符串对象,将改变后的字符加入到该新的对象里. 两种方法: 1.python的 replace函数 2.判断修改 def replace(a ...
随机推荐
- java开发--JavaScript
http://www.cnblogs.com/hongten/archive/2011/03/21/1990121.html JavaScript表单验证电话号码,判断一个输入量是否为电话号码,通过正 ...
- Delphi对于控件的SuperClassing(封装并扩展Button,使之变成TButton)
写博客写了这么久,但是一直不知道应该怎么样写函数之间的调用关系和执行顺序,因为不停的跳来跳去的,但是写的时候却只能顺序写调用关系,直到今天发现这种写法很不错: TButton创建窗口是在CreateW ...
- Hibernate笔记——C3P0配置
Hibernate作为持久层(ORM)框架,操作数据库,自然也就离不开数据库连接池了.其支持多种连接池,这里就用最熟悉的C3P0连接池. C3P0连接池前面已经介绍了并使用很多次了就不再详细说明了. ...
- iphone 6 设置自定义铃声(未越狱)
环境: ipone 6 iTunes 12.4.0.119 IOS 9.3.2 先把需要设置的铃声下载到电脑上,然后打开iTunes下的文件->将文件添加到资料库,如图: 2.在音乐列表里右击所 ...
- UX结合需求实例化进行设计开发
技 术 文 件 技术文件名称:实例化+UX需求分析实践:场景监控需求实例化 技术文件编号: 版 本:V1.0 共 32 页 (包括封面) 拟 制 廖开蒙.刀锋团队 审 核 ...
- 局部敏感哈希Locality Sensitive Hashing(LSH)之随机投影法
1. 概述 LSH是由文献[1]提出的一种用于高效求解最近邻搜索问题的Hash算法.LSH算法的基本思想是利用一个hash函数把集合中的元素映射成hash值,使得相似度越高的元素hash值相等的概率也 ...
- poj -3262 Protecting the Flowers (贪心)
http://poj.org/problem?id=3262 开始一直是理解错题意了!!导致不停wa. 这题是农夫有n头牛在花园里啃花朵,然后农夫要把它们赶回棚子,每次只能赶一头牛,并且给出赶回每头牛 ...
- TFSAPI
Team Foundation Server (TFS)工具的亮点之一是管理日常工作项, 工作项如Bug, Task,Task Case等. 使用TFS API编程访问TFS服务器中的工作项, 步骤如 ...
- Android 的 ramdisk.img、system.img、userdata.img 作用说明,以及UBoot 系统启动过程
首先通過編譯,先將android內核編譯成功.正常情況下,在目錄out/target.product/generic/(但是有的就沒有generic文件,如freescale和iriver:但是lon ...
- System.Linq.Dynamic 和Nhibernate
var session = NHibernateSessionManager.Instance.GetSession(); "); var staffList = session.Query ...