- 通過isnumber自帶函數進行數字計數
- 使用正則表達式進行字符串篩選計數
一、isnumber函數
- 獲得字符串中的數字個數, isnumber提供了判斷字符為數字的機制
- (NSInteger)numberCount {
NSInteger count = 0;
for (NSInteger i = 0; i < self.length; ++i) {
if (isnumber([self characterAtIndex:i])) {
// isnumber提供了判斷字符為數字的機制
count++;
}
}
return count;
}
- 獲得僅包含數字的字符串
- (NSString *)numberString {
NSMutableString *string = [NSMutableString string];
for (NSInteger i = 0; i < self.length; ++i) {
if (isnumber([self characterAtIndex:i])) {
[string appendFormat:@"%c", [self characterAtIndex:i]];
}
}
return string;
}
二、正則表達式
- (NSInteger)countByRegex {
// 根據需要篩選字母、數字選定篩選語句
NSString *numberRegexStr = @"[0-9]";
// NSString *symbolRegexStr = @"[a-zA-Z]";
NSRegularExpression *regularExpression = [[NSRegularExpression alloc] initWithPattern:numberRegexStr
options:NSRegularExpressionCaseInsensitive
error:nil];
NSArray *resultArray = [regularExpression matchesInString:self
options:0
range:NSMakeRange(0, self.length)];
return resultArray.count;
}
只想日后回頭看看來時的路,能發(fā)現自己并不是一無所有。