我正在从预装的核心数据数据库中加载字符串,这些数据库恰好都是CAPITAL。
我想检查每个单词是否在英语词典中,如果是,请尝试将其小写为常规句子,如果不是大写(对于缩写等)。
iOS 4有没有办法做到这一点?
答案 0 :(得分:6)
诺亚答案的实施:
-(BOOL) isDictionaryWord:(NSString*) word
{
UITextChecker *checker = [[UITextChecker alloc] init];
NSLocale *currentLocale = [NSLocale currentLocale];
NSString *currentLanguage = [currentLocale objectForKey:NSLocaleLanguageCode];
NSRange searchRange = NSMakeRange(0, [word length]);
NSRange misspelledRange = [checker rangeOfMisspelledWordInString:word range: searchRange startingAt:0 wrap:NO language: currentLanguage ];
return misspelledRange.location == NSNotFound;
}
NSString string = @"lalala";
if ([self isDictionaryWord:string]) string = [string lowercaseString];
答案 1 :(得分:0)
从iOS 3.2开始,您可以使用UITextChecker类访问系统字典。使用其-rangeOfMisspelledWordInString:range:startingAt:wrap:language:
方法:如果它返回location
为NSNotFound
的范围,则您提供的字符串中的所有字词都在字典中或已经被文字“学习”检查器。