繁体   English   中英

如何检查一个单词是否在字典中?

[英]How can I check whether a word is in a dictionary or not?

我正在从预加载的核心数据数据库中加载字符串,该数据库恰好是大写的。

我想检查每个单词是否在英语词典中,如果是,请尝试像普通句子一样将其小写,如果不保持大写(用于缩写等)。

有没有办法用 iOS 4 做到这一点?

诺亚回答的实施:

-(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];

从 iOS 3.2 开始,您可以使用 UITextChecker class 访问系统字典。 使用它的-rangeOfMisspelledWordInString:range:startingAt:wrap:language:方法:如果它返回一个locationNSNotFound的范围,则您提供的字符串中的所有单词都在字典中,或者已经被文本检查器“学习”。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM