首页 理论教育 C++STL字符串修改和替换

C++STL字符串修改和替换

时间:2023-10-25 理论教育 版权反馈
【摘要】:字符串内容的变化包括修改和替换两种。例如assign(),operator=,erase(),交换,插入等。assign()函数使用assign()函数可以直接给字符串赋值。图2-6 例2-8的执行效果2.字符串内容的替换如果在一个字符串中标识出具体位置,便可以通过下标操作修改指定位置字符的值,或者替换某个子串。图2-7 例2-9的执行效果总结本节讲述了诸多可进行字符串内容的修改和替换的函数及其使用方法,并给出了例题。

C++STL字符串修改和替换

字符串内容的变化包括修改和替换两种。本节将分别讲解字符串内容的修改和字符串内容的替换。

1.字符串内容的修改

可以通过使用多个函数修改字符串的值。例如assign(),operator=,erase(),交换(swap),插入(insert)等。另外,还可通过append()函数添加字符。下面逐一介绍各成员函数的使用方法。

(1)assign()函数

使用assign()函数可以直接给字符串赋值。该函数既可以将整个字符串赋值给新串,也可以将字符串的子串赋值给新串。其在basic_string中的原型为:

978-7-111-51399-5-Chapter02-32.jpg

以上几种方法在例2-7中均有所体现。请读者参考下述代码。

例2-7

978-7-111-51399-5-Chapter02-33.jpg

978-7-111-51399-5-Chapter02-34.jpg

(2)operator=函数

operator=的功能就是赋值。

(3)erase()函数

erase()函数的原型为:

978-7-111-51399-5-Chapter02-35.jpg

erase()函数的使用方法为:

978-7-111-51399-5-Chapter02-36.jpg

(4)swap()函数

swap()函数的原型为:

978-7-111-51399-5-Chapter02-37.jpg

swap()函数的使用方法为:

978-7-111-51399-5-Chapter02-38.jpg

(5)insert()函数

insert()函数的原型为:

978-7-111-51399-5-Chapter02-39.jpg

insert()函数的使用方法为:

978-7-111-51399-5-Chapter02-40.jpg

978-7-111-51399-5-Chapter02-41.jpg(www.xing528.com)

(6)append()函数

append()函数的原型为:

978-7-111-51399-5-Chapter02-42.jpg

append()函数的使用方法为:

978-7-111-51399-5-Chapter02-43.jpg

978-7-111-51399-5-Chapter02-44.jpg

下面通过例2-8介绍这些函数的使用。完整代码如下:

例2-8

978-7-111-51399-5-Chapter02-45.jpg

978-7-111-51399-5-Chapter02-46.jpg

978-7-111-51399-5-Chapter02-47.jpg

例2-8执行效果如图2-6所示。读者可根据源代码逐项对照。

978-7-111-51399-5-Chapter02-48.jpg

图2-6 例2-8的执行效果

2.字符串内容的替换

如果在一个字符串中标识出具体位置,便可以通过下标操作修改指定位置字符的值,或者替换某个子串。完成此项操作需要使用string类的成员函数replace()。该函数的原型如下:

978-7-111-51399-5-Chapter02-49.jpg

978-7-111-51399-5-Chapter02-50.jpg

该函数的使用方法参见例2-9。

2-9

978-7-111-51399-5-Chapter02-51.jpg

例2-9的执行效果如图2-7所示。

978-7-111-51399-5-Chapter02-52.jpg

图2-7 例2-9的执行效果

总结

本节讲述了诸多可进行字符串内容的修改和替换的函数及其使用方法,并给出了例题。由于每个函数可能有多个原型,希望读者根据自己的情况,掌握其中的一种或两种,以满足自己使用的需要。同时,希望读者能够对照例题的执行效果,认真阅读本章节中的源代码,彻底掌握本节内容。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈