C++字符串是编程中常用的数据类型之一,字符串常用的操作函数有很多,本文一一介绍并附带示例,内容包括字符串的查找、插入、截取、删除等操作:
1. 查找
字符串查找操作有几个函数可以使用:find()
、rfind()
、find_first_of()
、find_last_of()
、find_first_not_of()
、find_last_not_of()
。主要区别是查找的方向、开始查找的位置和查找的规则。
1.1 find
find(const string& str, size_t pos = 0) const
,该函数用于查找字符串中与指定参数的所有字符序列相匹配的第一个位置。如果未找到,则返回-1。
示例:
string s = "hello world";
int index = s.find("world"); // 返回6
1.2 rfind
rfind(const string& str, size_t pos = npos) const
,该函数用于查找从指定位置开始往前的所有字符序列与指定字符串相匹配的最后一个位置。如果未找到,则返回-1。
示例:
string s = "hello, world, world";
int index = s.rfind("world"); // 返回15
2. 插入
C++字符串插入操作有两个函数可以使用:insert()
和 replace()
。
2.1 insert
insert(size_t pos, const string& str)
,该函数用于在指定位置之前插入一个字符串。如果pos
的值超过了字符串的长度,则在字符串末尾插入。
示例:
string s = "hello";
s.insert(5, " world"); // s变为"hello world"
2.2 replace
replace(size_t pos, size_t len, const string& str)
,该函数用于从指定位置开始替换指定长度的子串。
示例:
string s = "hello, world";
s.replace(7, 5, "Justin"); // s变为"hello, Justin"
3. 截取
C++字符串截取操作有两个函数可以使用:substr()
和 erase()
。
3.1 substr
substr(size_t pos = 0, size_t len = npos) const
,该函数用于从指定位置开始截取指定长度的子串。如果pos
的值超过了字符串的长度,则返回空字符串。
示例:
string s = "hello, world";
string sub = s.substr(7, 6); // sub变为"world"
3.2 erase
erase(size_t pos = 0, size_t len = npos)
,该函数用于删除指定位置和长度的子串。
示例:
string s = "hello, world";
s.erase(7, 5); // s变为"hello, "
4. 删除
C++字符串删除操作只有一个函数可以使用:erase()
,操作同上。
示例:
string s = "hello, world";
s.erase(7, 6); // s变为"hello,"
以上就是C++字符串常用操作函数的介绍,希望能够对大家有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解C++字符串常用操作函数(查找、插入、截取、删除等) - Python技术站