OC-字符串中大小写字母转换

简介:

一般语言中的大小写转换都会提供的有默认的函数,不过闲来无事,简单的模仿实现了一下:

系统中默认的大小写转换:

1
2
3
4
NSString   *name=@ "博客园-FlyElephant" ;
NSString   *url=@ "博客地址:http://www.cnblogs.com/xiaofeixiang" ;
NSLog (@ "转换为小写字符串:%@" ,[name lowercaseString]);
NSLog (@ "转换为大写字符串:%@" ,[url uppercaseString]);


如果自己实现的话,需要考虑一下ASCII码,大小写之间的差值是32,A是65,a是97,其他依此类推:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
-( NSString  *)toLower:( NSString  *)str{
     for  ( NSInteger  i=0; i<str.length; i++) {
         if  ([str characterAtIndex:i]>= 'A' &[str characterAtIndex:i]<= 'Z' ) {
             //A  65  a  97
             char   temp=[str characterAtIndex:i]+32;
             NSRange  range= NSMakeRange (i, 1);
             str=[str stringByReplacingCharactersInRange:range withString:[ NSString  stringWithFormat:@ "%c" ,temp]];
         }
     }
     return  str;
}
 
-( NSString  *)toUpper:( NSString  *)str{
     for  ( NSInteger  i=0; i<str.length; i++) {
         if  ([str characterAtIndex:i]>= 'a' &[str characterAtIndex:i]<= 'z' ) {
             //A  65  a  97
             char   temp=[str characterAtIndex:i]-32;
             NSRange  range= NSMakeRange (i, 1);
             str=[str stringByReplacingCharactersInRange:range withString:[ NSString  stringWithFormat:@ "%c" ,temp]];
         }
     }
     return  str;
}

调用一下也很简单:

1
2
3
NSStringUtil   *util=[[ NSStringUtil  alloc]init];
NSLog (@ "小写转换:%@" ,[util toLower:name]);
NSLog (@ "大写转换:%@" ,[util toUpper:url]);

效果如下:

本文转自Fly_Elephant博客园博客,原文链接:http://www.cnblogs.com/xiaofeixiang/p/4615266.html,如需转载请自行联系原作者

相关文章
|
5月前
将小写字母全部转换成大写字母
【2月更文挑战第5天】将小写字母全部转换成大写字母。
47 0
|
5月前
|
弹性计算 运维 Shell
写一个方法实现数字转中文大写的方法
之前开发了一个报销相关的应用,其中遇到了小写数字转中文大写的需求,搜寻了一些资料以后对方法进行了改进,现在分享出来给大家参考
写一个方法实现数字转中文大写的方法
|
5月前
|
编译器 C语言
【C语言】字母转换大小写的三种方法
【C语言】字母转换大小写的三种方法
138 0
从键盘录入一个字符串,统计该串中有大写字母、小写字母、数字各有多少个。比如:Hello12345World大写:2个 小写:8个数字:5个。
从键盘录入一个字符串,统计该串中有大写字母、小写字母、数字各有多少个。比如:Hello12345World大写:2个 小写:8个数字:5个。
251 0
转换大小写与完成字符串反转
转换大小写与完成字符串反转
81 0
|
Java
实现字符串大小写的转换
实现字符串大小写的转换
114 0
|
Python
python取出字符串中的数字、字母、大小写字母
python取出字符串中的数字、字母、大小写字母
671 0
转换字符串的首字母为大写
转换字符串的首字母为大写
56 0
判断字符串首个字母是否大写,若大写,则输出该字符串中大写字母的个数 并打印。
判断字符串首个字母是否大写,若大写,则输出该字符串中大写字母的个数 并打印。
143 0