string 大小写转换

 

       STL的algorithm库确实给我们提供了这样的便利,使用模板函数transform可以轻松解决这个问题,开发人员只需要提供一个函数对象,例如将char转成大写的toupper函数或者小写的函数tolower函数。

transform原型:

 
复制代码
 1 #include <string>  
 2 #include <algorithm>  
 3 using namespace std;  
 4       
 5 int main()  
 6 {  
 7         string strA = "yasaken@126.com";  
 8         string strB = "LURY@LENOVO.com";  
 9         printf("Before transform:
");  
10         printf("strA:%s 
", strA.c_str());  
11         printf("strB:%s 

", strB.c_str());  
12       
13         transform(strA.begin(), strA.end(), strA.begin(), ::toupper);  
14         transform(strB.begin(), strB.end(), strB.begin(), ::toupper);  
15         printf("After transform to toupper:
");  
16         printf("strA:%s 
", strA.c_str());  
17         printf("strB:%s 

", strB.c_str());  
18       
19         transform(strA.begin(), strA.end(), strA.begin(), ::tolower);  
20         transform(strB.begin(), strB.end(), strB.begin(), ::tolower);  
21         printf("After transform to lower:
");  
22         printf("strA:%s 
", strA.c_str());  
23         printf("strB:%s 

", strB.c_str());  
24         return 0;  
25 }  
复制代码

运行结果:

复制代码
 1 strA:yasaken@126.com   
 2 strB:LURY@LENOVO.com   
 3   
 4 After transform to toupper:  
 5 strA:YASAKEN@126.COM   
 6 strB:LURY@LENOVO.COM   
 7   
 8 After transform to lower:  
 9 strA:yasaken@126.com   
10 strB:lury@lenovo.com
复制代码
   转载自:http://blog.csdn.net/zhongyhc/article/details/41686893。
原文地址:https://www.cnblogs.com/superxuezhazha/p/6393101.html