最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++ string替換單個(gè)指定字符為其它字符問(wèn)題

 更新時(shí)間:2023年06月06日 09:35:45   作者:Pisces_224  
這篇文章主要介紹了C++ string替換單個(gè)指定字符為其它字符問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

C++ string替換單個(gè)指定字符為其它字符

C++的string提供了replace方法,實(shí)現(xiàn)字符串的替換。但是涉及到將string串中的某個(gè)字符替換成新的字符的功能,在提供的replace方法中沒(méi)有實(shí)現(xiàn)。

在 #include<algorithm> 中也有一個(gè)replace方法,它可以實(shí)現(xiàn)我們想要的。

#include <algorithm>
int main()
{
	string str = "[1,2,3,4,5]";
	cout << str << endl;
	replace(str.begin(), str.end(), ',', ' ');//將逗號(hào)替換為空格
	cout << str << endl;
}

[1,2,3,4,5]

[1 2 3 4 5]

C++ std::string 字符串替換

std::string里面std::replace只有單字符替換

std::replace(str.begin(), str.end(), '\"', '@');//單字符替換-----將雙引號(hào)換成@符

如果有字符串替換的話需要配合find()使用

/// <summary>
/// 字符串批量替換
/// </summary>
/// <param name="str">輸入的文本</param>
/// <param name="a">目標(biāo)文本</param>
/// <param name="b">替換內(nèi)容</param>
/// <returns>替換好的文本</returns>
std::string spp(std::string str, std::string a, std::string b)
{
	int oldPos = 0;
	while (str.find(a, oldPos) != -1)//在未被替換的文本中尋找目標(biāo)文本
	{
		int start = str.find(a, oldPos);//找到目標(biāo)文本的起始下標(biāo)
		str.replace(start, a.size(), b);
		//從str[start]開(kāi)始到str[a.size()]替換為b
		//str[start]到str[a.size()]也就是a所在得片段
		oldPos = start + b.size();//記錄未替換文本的起始下標(biāo)
	}
	return str;
}
int main()
{
    std::string str = "{\"QQ1\":123,\"QQ2\":123,\"QQ3\":123}";
    str = spp(str, "123", "321");
    std::cout << str << std::endl;
    str = spp(str, "\"", "\\\"");
    std::cout << str << std::endl;
}

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

富锦市| 沭阳县| 岳阳县| 洛隆县| 山西省| 集贤县| 鱼台县| 华容县| 缙云县| 哈尔滨市| 灵宝市| 曲松县| 镇平县| 景东| 遵化市| 榆林市| 彭山县| 香格里拉县| 美姑县| 烟台市| 鄂伦春自治旗| 堆龙德庆县| 丰台区| 台南市| 泾阳县| 阳信县| 静海县| 浦县| 大宁县| 姚安县| 开化县| 荔波县| 奉节县| 山阴县| 松滋市| 蒙自县| 鹿泉市| 扶余县| 乌兰县| 泰兴市| 英山县|