变更记录

序号 录入时间 录入人 备注
1 2015-08-25 Alfred Jiang -
2 2015-12-23 Alfred Jiang -
2 2016-05-09 Alfred Jiang -

方案名称

NSString - 筛选出 NSString 中特定字符串

关键字

NSString \ 筛选 \ 字符串

需求场景

  1. 需要在一个长串中筛选出特定的字串,比如一句中文中筛选出金额数字
  2. 筛选出一个字符串指定字符集合
  3. 筛选出字符串中全部字母和数字

参考链接

  1. CocoaChina - 在NSString中找到数字转换成int,方法如下。so cool !

详细内容

1
2
3
4
NSString *aStr = @"这是一句测试,里面包含了19.23这个数字";
NSCharacterSet* nonDigits = [[NSCharacterSet decimalDigitCharacterSet] invertedSet];
NSString *aDigits = [aStr stringByTrimmingCharactersInSet:nonDigits];
//aDigits = 19.23
1
2
3
4
NSString *unfilteredString = @"!@#$%^&*()_+|abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
NSCharacterSet *notAllowedChars = [[NSCharacterSet characterSetWithCharactersInString:@"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"] invertedSet];
NSString *resultString = [[unfilteredString componentsSeparatedByCharactersInSet:notAllowedChars] componentsJoinedByString:@""];
//resultString = abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ

效果图

(无)

备注

(无)