String字符串的比较和转换
来源:互联网 发布:阿里云账号能注销吗 编辑:程序博客网 时间:2024/06/03 16:13
String类里有提供了字符串的比较函数,但是它是精准比较,如果我们想做模糊比较就不好做了。msdn描述如下:
basic_string::compare
Performs a case sensitive comparison with a specified string to determine if the two strings are equal or if one is lexicographically less than the other.
平时我们很多情况都要用模糊比较,我们可以写一个函数来实现,实现如下。
bool CompareStringI(const string& str1, const string& str2)
{
if (str1.size() != str2.size()) {
return false;
}
for (string::const_iterator c1 = str1.begin(), c2 = str2.begin(); c1 != str1.end(); ++c1, ++c2) {
if (tolower(*c1) != tolower(*c2)) {
return false;
}
}
return true;
};
使用代码
string s1="LOVE";
int nResult=CompareStringI(s1,"love");
cout<<"Result: "<<nResult<<endl;
大小写转换在这里就简单了
string lower = "aaaabbbbbCC";
transform(lower.begin(), lower.end(), lower.begin(), toupper);
cout<<lower<<endl;
运行结果:
字符串转整形
string str("1000");
stringstream ss(str);
double num;
ss>>num;
cout<<num<<endl;
string str1 = "125";
wstring str2 = L"a";
int num_i = boost::lexical_cast<int>(str1);
//不可以转字符
// int num_i = boost::lexical_cast<int>(str2);//error
cout<<num_i<<endl;
运行结果:
16进制字符转整形,这个很实用,工作中比较要转换。
const char* begin = "1b";
char *end;
int l = strtol(begin, &end, 16);
cout<<l<<endl;
运行结果:
- String字符串的比较和转换
- char*数组(c类型字符串)和c++中的string的转换、字符串比较、char*数组等问题
- char*数组(c类型字符串)和c++中的string的转换、字符串比较、char*数组等问题
- 字符串比较大小的principle 、ASCII码和字符串string
- Android - CharSequence和String的比较和转换
- Android - CharSequence和String的比较和转换
- C风格的字符串和std::string的比较
- java String 和date 转换 以及时间的比较
- String与Date的相互转换和日期比较
- char *、CString和string之间的类型转换与比较
- String类字符串的比较
- string 和 stringBuilder在创建字符串的效率比较代码
- String.valueOf和字符串直接相加的性能比较
- VB 字节数组和字符串的转换问题 (String<>Byte)
- string对象和C字符串之间的转换
- String对象和C字符串之间的转换
- C风格字符串和string类型的相互转换
- JS中Object对象和String字符串的相互转换
- MFC常用函数(总)for Myse
- Linux 有问必答:在Linux上如何将文本文件转换成PDF格式
- 系统维护 电脑蓝屏代码大全
- Android Intent.FLAG_NEW_TASK详解
- ruby直接字符串压缩与解压缩
- String字符串的比较和转换
- 过滤器:自清洗过滤器原理及技术特点阐述
- make时的低级错误: missing separator stop
- JSP2的自定义标签详解
- php学习手册
- 指针函数和函数指针
- 启动外部浏览器
- 支付宝钱包界面
- nexus私服update index失败解决方案