在app中,处理用户的输入是很头疼的,NSString自带了这个方法,可以去除用户输入的前后空格(注意只是前后哦)或是里面的特殊符号。
NSString *str = @" 我是一个程序猿 ";
NSString *newStr = [str stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
NSLog(@"处理之前|%@|, 处理之后|%@|", str, newStr);
输出结果: 处理之前| 我是一个程序猿 |, 处理之后|我是一个程序猿|
- 即 上述方法能去除用户前后输入文字的空格
- 也可以去除文字中的特殊符号(一种过滤)
这里不得不说到NSCharacterSet类, NSCharacterSet其实是许多字符或者数字或者符号的集合,如果需要过滤用户输入的字符串,需要自行创建NSCharacterSet对象,并且输入要过滤的字符
NSCharacterSet *set = [NSCharacterSet characterSetWithCharactersInString:@"@/:();()¥「」"、[]{}#%-*+=_\\|~<>$€^•'@#$%^&*()_+'\""];
- 其中 NSCharacterSet提供了很多字符集
+ (NSCharacterSet *)controlCharacterSet;
+ (NSCharacterSet *)whitespaceCharacterSet;
+ (NSCharacterSet *)whitespaceAndNewlineCharacterSet;
+ (NSCharacterSet *)decimalDigitCharacterSet;
+ (NSCharacterSet *)letterCharacterSet;
+ (NSCharacterSet *)lowercaseLetterCharacterSet;
+ (NSCharacterSet *)uppercaseLetterCharacterSet;
+ (NSCharacterSet *)nonBaseCharacterSet;
+ (NSCharacterSet *)alphanumericCharacterSet;
+ (NSCharacterSet *)decomposableCharacterSet;
+ (NSCharacterSet *)illegalCharacterSet;
+ (NSCharacterSet *)punctuationCharacterSet;
+ (NSCharacterSet *)capitalizedLetterCharacterSet;
+ (NSCharacterSet *)symbolCharacterSet;
+ (NSCharacterSet *)newlineCharacterSet NS_AVAILABLE(10_5, 2_0);