我正在尝试创建一个生成随机单词的应用程序,但是我希望在创建缩写词时忽略它们。为此,我随机生成一个字母数组,(用与拼字游戏相同的权重对它们进行加权;P)然后使用 UITextChecker 运行数组检查正确的单词,如下所示:
for (int i = 0; i < 14; i++) {
[word setString:@""];
for (int j = i; j < 14 ;j++) {
[word appendString:[letterArray objectAtIndex:j]];
NSRange misspelledWord = [checkText rangeOfMisspelledWordInString:word range:NSMakeRange(0, word.length) startingAt:0 wrap:NO language:@"en_GB"];
if (misspelledWord.location == NSNotFound && word.length > 2) {
NSRange misspelledWordSecondRun = [checkText rangeOfMisspelledWordInString:word range:NSMakeRange(0, word.length) startingAt:0 wrap:NO language:@"en_US"];
if (misspelledWordSecondRun.location == NSNotFound) {
NSLog(@"You generated the word: %@",word);
}
}
else {
}
}
}
唯一的问题是,这让大量的缩写和首字母缩略词通过......有什么办法可以减少这个数字吗?必须有一种语言可以发送 checkText 这是英语词典的免费缩写版本吗?或者以某种方式告诉它将首字母缩略词标记为拼写错误的单词?如您所见,我试图通过使用我们英语而不是英国英语再次过滤单词来减少数量,但这并没有减少允许通过的首字母缩略词的数量:/