如何使用正则表达式在 iPhone 上检查 NSStrring 仅包含以下字符:a-zA-Z
数字0-9
或特殊字符:!@#$%^&*()_+-={}[]:"|;'\<>?,./
问问题
668 次
3 回答
2
NSCharacterSet *charactersToRemove = [[NSCharacterSet characterSetWithCharactersInString:@"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890 "] invertedSet];
NSString *stringValueOfTextField = [[searchBar.text componentsSeparatedByCharactersInSet:charactersToRemove]
componentsJoinedByString:@""];
试试这个::::
于 2011-08-30T11:49:12.297 回答
0
为此,您可以使用标准类NSRegularExpression
于 2011-08-30T11:43:20.740 回答
0
NSRegularExpression *regex = [NSRegularExpression
regularExpressionWithPattern:@"\w[!@#$%^&*()_+-={}\[\]:\"|;'\<>?,./]"
options:NSRegularExpressionCaseInsensitive
error:&error];
NSUInteger numberOfMatches = [regex numberOfMatchesInString:string
options:0
range:NSMakeRange(0, [string length])];
请注意,NSRegularExpression
仅适用于 iOS 4 及更高版本。
于 2011-08-30T11:50:40.953 回答