下面是关于C++中的String的常用函数用法的完整攻略:
1. String的基础用法
在C++中使用String需要引入
#include <iostream>
#include <string>
int main() {
std::string str1 = "String Operations";
std::string str2 = "C++";
// 输出字符串长度
std::cout << "str1 Length: " << str1.length() << std::endl;
// 连接两个字符串
std::string str3 = str1 + " in " + str2;
std::cout << "str3: " << str3 << std::endl;
// 输出字符串的某一部分
std::cout << "str1 Substring: " << str1.substr(0, 6) << std::endl;
// 查找指定字符或子字符串
std::size_t pos = str3.find("Operations");
if (pos != std::string::npos) {
std::cout << "Found at position: " << pos << std::endl;
} else {
std::cout << "Not found." << std::endl;
}
return 0;
}
输出结果如下:
str1 Length: 17
str3: String Operations in C++
str1 Substring: String
Found at position: 7
2. 常用String函数
2.1 length()函数
String的length()函数可以返回字符串的长度,使用方法非常简单,示例代码如下:
std::string str = "Hello World";
int len = str.length();
2.2 substr()函数
substr()函数用于返回字符串的某一部分,它需要指定起始位置和截取长度,示例代码如下:
std::string str = "Hello World";
std::string sub_str = str.substr(0, 5); // 返回"Hello"
2.3 find()函数
find()函数用于查找字符串中是否存在指定字符或子字符串,如果找到,则返回该字符或子字符串在字符串中的位置,如果未找到,则返回std::string::npos的值,示例代码如下:
std::string str = "Hello World";
std::size_t pos = str.find("World");
if (pos != std::string::npos) {
std::cout << "Found at position: " << pos << std::endl;
} else {
std::cout << "Not found." << std::endl;
}
2.4 append()函数
append()函数用于向字符串末尾添加一个字符或字符串,示例代码如下:
std::string str = "Hello";
str.append(" World"); // 等同于 str += " World"
3. String的高级用法
3.1 std::stringstream
std::stringstream是C++中一个方便的字符串流,可以用于将任何数据类型转换为字符串,示例代码如下:
#include <iostream>
#include <sstream>
#include <string>
int main() {
std::stringstream ss;
std::string str;
int num = 123;
// 将数字转换成字符串
ss << num;
ss >> str;
std::cout << "Number: " << num << std::endl;
std::cout << "String: " << str << std::endl;
return 0;
}
输出结果如下:
Number: 123
String: 123
3.2 std::regex
std::regex是C++中的正则表达式库,可以用于匹配字符串中的模式,示例代码如下:
#include <iostream>
#include <regex>
#include <string>
int main() {
std::string str = "Hello, World!";
std::regex pattern("[a-zA-Z]+");
std::sregex_iterator it(str.begin(), str.end(), pattern);
std::sregex_iterator end;
std::cout << "Matched Words: " << std::endl;
while (it != end) {
std::smatch sm = *it;
std::cout << sm.str() << std::endl;
++it;
}
return 0;
}
输出结果如下:
Matched Words:
Hello
World
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C++中的String的常用函数用法(最新推荐) - Python技术站