我正在尝试创建一个应用程序,其中随机生成的单词,但我希望缩写被忽略时,他们被创建。为此,我随机生成一个字母数组(用与scrabble相同的权重对它们进行加权;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,这是一个英文字典的缩写免费版本?或者以某种方式告诉它将缩写标记为拼写错误的单词?如你所见,我试图通过使用美国英语而不是英国英语第二次过滤单词来减少数量,但是这根本不会减少允许使用的缩略词的数量:/
发布于 2012-11-21 00:06:18
使用一个我不想包含的单词数组来实现,每次生成一个单词时,它都会检查它是否在这个数组中。如果是,则不会将其注册为单词,如果不是,则不会。
https://stackoverflow.com/questions/13327670
复制相似问题