NSString

字符串反转

第一种:

- (NSString *)reverseWordsInString:(NSString *)str

{    

    NSMutableString *newString = [[NSMutableString alloc] initWithCapacity:str.length];

    for (NSInteger i = str.length - 1; i >= 0 ; i --)

    {

        unichar ch = [str characterAtIndex:i];       

        [newString appendFormat:@"%c", ch];    

    }    

     return newString;

}

//第二种:

- (NSString*)reverseWordsInString:(NSString*)str

{    

     NSMutableString *reverString = [NSMutableString stringWithCapacity:str.length];    

     [str enumerateSubstringsInRange:NSMakeRange(0, str.length) options:NSStringEnumerationReverse | NSStringEnumerationByComposedCharacterSequences  usingBlock:^(NSString *substring, NSRange substringRange, NSRange enclosingRange, BOOL *stop) {

          [reverString appendString:substring];                         

      }];    

     return reverString;

}

iOS 获取汉字的拼音

+ (NSString *)transform:(NSString *)chinese

{    

    //将NSString装换成NSMutableString

    NSMutableString *pinyin = [chinese mutableCopy];    

    //将汉字转换为拼音(带音标)    

    CFStringTransform((__bridge CFMutableStringRef)pinyin, NULL, kCFStringTransformMandarinLatin, NO);    

    NSLog(@"%@", pinyin);    

    //去掉拼音的音标    

    CFStringTransform((__bridge CFMutableStringRef)pinyin, NULL, kCFStringTransformStripCombiningMarks, NO);    

    NSLog(@"%@", pinyin);    

    //返回最近结果    

    return pinyin;

}

G: 公元时代,例如AD公元

yy: 年的后2位

yyyy: 完整年

MM: 月,显示为1-12

MMM: 月,显示为英文月份简写,如 Jan

MMMM: 月,显示为英文月份全称,如 Janualy

dd: 日,2位数表示,如02

d: 日,1-2位显示,如 2

EEE: 简写星期几,如Sun

EEEE: 全写星期几,如Sunday

aa: 上下午,AM/PM

H: 时,24小时制,0-23

K:时,12小时制,0-11

m: 分,1-2位

mm: 分,2位

s: 秒,1-2位

ss: 秒,2位

S: 毫秒

阿拉伯数字转中文格式

+(NSString *)translation:(NSString *)arebic

{  

    NSString *str = arebic;

    NSArray *arabic_numerals = @[@"1",@"2",@"3",@"4",@"5",@"6",@"7",@"8",@"9",@"0"];

    NSArray *chinese_numerals = @[@"一",@"二",@"三",@"四",@"五",@"六",@"七",@"八",@"九",@"零"];

    NSArray *digits = @[@"个",@"十",@"百",@"千",@"万",@"十",@"百",@"千",@"亿",@"十",@"百",@"千",@"兆"];

    NSDictionary *dictionary = [NSDictionary dictionaryWithObjects:chinese_numerals forKeys:arabic_numerals];

    NSMutableArray *sums = [NSMutableArray array];

    for (int i = 0; i < str.length; i ++) {

        NSString *substr = [str substringWithRange:NSMakeRange(i, 1)];

        NSString *a = [dictionary objectForKey:substr];

        NSString *b = digits[str.length -i-1];

        NSString *sum = [a stringByAppendingString:b];

        if ([a isEqualToString:chinese_numerals[9]])

        {

            if([b isEqualToString:digits[4]] || [b isEqualToString:digits[8]])

            {

                sum = b;

                if ([[sums lastObject] isEqualToString:chinese_numerals[9]])

                {

                    [sums removeLastObject];

                }

            }else

            {

                sum = chinese_numerals[9];

            }

            if ([[sums lastObject] isEqualToString:sum])

            {

                continue;

            }

        }

        [sums addObject:sum];

    }

    NSString *sumStr = [sums componentsJoinedByString:@""];

    NSString *chinese = [sumStr substringToIndex:sumStr.length-1];

    NSLog(@"%@",str);

    NSLog(@"%@",chinese);

    return chinese;

}

获取手机安装的应用

Class c =NSClassFromString(@"LSApplicationWorkspace");

id s = [(id)c performSelector:NSSelectorFromString(@"defaultWorkspace")];

NSArray *array = [s performSelector:NSSelectorFromString(@"allInstalledApplications")];

for (id item in array)

{

    NSLog(@"%@",[item performSelector:NSSelectorFromString(@"applicationIdentifier")]);

    //NSLog(@"%@",[item performSelector:NSSelectorFromString(@"bundleIdentifier")]);

    NSLog(@"%@",[item performSelector:NSSelectorFromString(@"bundleVersion")]);

    NSLog(@"%@",[item performSelector:NSSelectorFromString(@"shortVersionString")]);

}

iOS-身份证中间数字设置为星号

- (NSString*)replaceStringWithAsterisk:(NSInteger)startLocation length:(NSInteger)length {

   NSString*replaceStr =self;

   for(NSIntegeri =0; i < length; i++) {

       NSRangerange =NSMakeRange(startLocation,1);

        replaceStr = [replaceStr stringByReplacingCharactersInRange:range withString:@"*"];

        startLocation ++;

    }

   returnreplaceStr;

}

NSString转char类型数组

unsignedcharcss[aaa.length];

    memcpy(css, [aaa cStringUsingEncoding:NSUTF8StringEncoding], aaa.length);

   for(inti =0; i <sizeof(css); i++) {

       NSLog(@"%d======%c",i,css[i]);

    }

char数组转NSString,这里就直接遍历拼接

NSMutableString*mustr = [NSMutableStringstring];

   for(inti =0; i <sizeof(css); i++) {

        [mustr appendFormat:@"%c",css[i] ];

    }

   NSLog(@"%@",mustr);

0.按范围截取字符串

NSString *string1 = @"This is a string";  

NSString *string2 = [string1 substringWithRange:NSMakeRange(0, 4)];  //从0位开始截取4个的长度

1.截取字符串

  NSString*string =@"sdfsfsfsAdfsdf";

 string = [string substringToIndex:7];//截取前七位字符 (第七位不算在内)

 [string substringFromIndex:2];//字符串从第2位开始截取 (包含第二位)

2.替换字符串

 NSString *strUrl = [urlString stringByReplacingOccurrencesOfString:@"我要被替换了" withString:@"我来替换你"];

3.中文字符串转UTF8

 NSString *strB = [@"中国"stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

4.将NSData和字符串

 //将NSData转化为NSString

  NSString* str = [[NSString alloc] initWithData:response encoding:NSUTF8StringEncoding];

 //将NSString 转化为NSData (NSString.h)

 NSData* data = [str dataUsingEncoding:NSUTF8StringEncoding];

5.从文件读取字符串

 NSString *path = @"astring.text";  

 NSString *astring = [[NSString alloc] initWithContentsOfFile:path]; 

6.写字符串到文件

    NSString *astring = [[NSString alloc] initWithString:@"This is a String!"];  

    NSString *path = @"astring.text";      

   [astring writeToFile: path atomically: YES];  

7.字符串中搜索字符串

         if ([strArangeOfString:area].location !=NSNotFound) {

            //如果strA的内容中包含area那么进入判断

         }

8.在需要的位置插入字符串-恩插入

 NSMutableString *String1 = [[NSMutableString alloc] initWithString:@"This is a NSMutableString"];  

[String1 insertString:@"Hi! " atIndex:0];  

9.切割字符串

 NSArray *array = [nstring componentsSeparatedByString:@","];

10.转换 NSURLRequest 或 URL 为字符串

 NSURL *url = [requestURL];

 NSString *str=[[url absoluteString] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

//你也可以用点属性

 NSString *urlStr = request.URL.absoluteString;

11.对比字符串的头

 NSString *str1 = @"aaaa://";

NSString *str2 = @"aaaa://aaaa.vvvv.com";

 BOOL _is = [str2 hasPrefix:str1];

12数字每隔3位用逗号分隔

/**

价格转换为每隔3位用逗号分割

show 是否显示小数点后面

*/

+ (NSString *)changePriceWithNumber:(float)value showPoint:(BOOL)show {

    NSString *valueStr = @"";

    NSString *format = @"";

    if (show) {

        valueStr = [NSString stringWithFormat:@"%.2f", value];

        format = @",###.##";

    } else {

        valueStr = [NSString stringWithFormat:@"%.f", value];

        format = @",###";

    }

    NSDecimalNumber *decNumber = [NSDecimalNumber decimalNumberWithString:valueStr];

    NSNumberFormatter *numberFormatter =   [[NSNumberFormatter alloc] init];

    [numberFormatter setNumberStyle:NSNumberFormatterDecimalStyle];

    [numberFormatter setPositiveFormat:format];

    return [numberFormatter stringFromNumber:decNumber];

}

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 195,898评论 5 462
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,401评论 2 373
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 143,058评论 0 325
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,539评论 1 267
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,382评论 5 358
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,319评论 1 273
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,706评论 3 386
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,370评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,664评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,715评论 2 312
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,476评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,326评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,730评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,003评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,275评论 1 251
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,683评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,877评论 2 335

推荐阅读更多精彩内容