一、C++中的 isalpha()、isalnum()、isdigit()、islower()、isupper()
//都是bool类型的
isalpha(char c);//判断一个字符是否为字母
isalnum(char c);//判断一个字符是否为数字或者字母
isdigit(char c);//判断一个字符是否为数字
islower(char c);//判断一个字符是否为小写字母
isupper(char c);//判断一个字符是否为大写字符
二、C++中的常见字符串处理函数
1、c_str()将string转换为const char *s;
//由于printf无法直接输出string,可以转换为*s再输出
const char *s = a.c_str();
printf("%s",s);
2、find()找子串位置
find函数从左向右寻找字符串第一次出现的位置
idx = s.find(Subs);
idx = s.find(Subs, int pos);//从pos位置开始向后查找
3、rfind()找子串位置
rfind函数从右向左寻找字符串第一次出现的位置(这里的位置指的是子串第一个字符的位置)
idx = s.rfind(Subs);
idx = s.find(Subs, int pos);
//如果没有符合条件的字符串返回无匹配项string::npos = -1
4、insert()插入函数
s.insert(idx, 子串);//在idx位置插入一个子串
s.insert(idx, n, char c);//在idx位置插入n个c
5、to_string(num)将数字转换为字符串
int a = 1234567;
string str = to_string(a);
6、back()字符串最后一个字符
str.back();
7、int a = stoi(string)
//将字符串转换为数字,默认在int范围内
string s = "1234";
int a = stoi(s);
a = 1234;
8、erase()删除操作
str.erase(idx);//删除idx到最后的字符
str.erase(idx, n);//删除idx开始的n个字符
9、substr()复制子串
string a = substr(pos, n);//从pos位置开始截取n个字符作为子串
string a = substr(pos);//从pos位置截取到最后
10、replace()替换
在C++中,string类提供了replace方法来替换字符串中的子串。该方法的语法如下:
string& replace (size_t pos, size_t len, const string& str);
其中,pos表示要替换的子串的起始位置,len表示要替换的子串的长度,str表示用来替换的新字符串。
例如,下面的代码将字符串中的子串”world”替换为”everyone”:
#include <iostream>
#include <string>
int main() {
std::string str = "Hello, world!";
str.replace(7, 5, "everyone");
std::cout << str << std::endl; // 输出:Hello, everyone!
return 0;
}
注意:replace方法会改变原始字符串,因此在使用前需要谨慎考虑。
除了上述的用法外,replace方法还可以接受另外一种形式的参数:
string& replace (const_iterator first, const_iterator last, const string& str);
其中,first和last是指向要替换的子串的迭代器。
例如,下面的代码将字符串中的子串”world”替换为”everyone”:
#include <iostream>
#include <string>
int main() {
std::string str = "Hello, world!";
str.replace(str.begin() + 7, str.begin() + 12, "everyone");
std::cout << str << std::endl; // 输出:Hello, everyone!
return 0;
}
这种用法可以更灵活地指定要替换的子串的位置,适用于需要动态计算子串位置的情况。
11、atof()函数
char s[] = "123.00";
atof(x); //这个函数只可以字符数组使用,不可以用string
可以将字符串转换为double类型
三、stringstream常见用法介绍
在C++中,stringstream是一个用于在内存中读写字符串的类,它可以将字符串转换为各种数据类型,也可以将各种数据类型转换为字符串。
下面是stringstream的基本用法介绍:
- 包含头文件
#include <sstream>
- 创建一个stringstream对象
std::stringstream ss;
- 将数据写入stringstream对象
int num = 10;
ss << "Number is: " << num;
- 从stringstream对象中读取数据
std::string str;
ss >> str;
- 将字符串转换为其他数据类型
std::string str = "10";
int num;
ss << str;
ss >> num;
- 清空stringstream对象
ss.str(""); // 清空字符串
ss.clear(); // 清空状态
stringstream是一个非常方便的工具,可以在字符串和各种数据类型之间进行灵活的转换。在实际编程中,stringstream经常被用来处理输入输出操作,特别是在需要将多种数据类型组合成一个字符串或者从一个字符串中提取出多种数据类型的情况下。
🤩