gpt4 book ai didi

iphone - NSMutableArray比较不同计数

转载 作者:行者123 更新时间:2023-11-28 19:10:55 25 4
gpt4 key购买 nike

我的新应用有问题:

我有两个字符串:

NSString *string1 = @"Il alla a la prison sur le champ" 
NSString *string2 = @"Il alllla a la prissson sur le champ"


我做数组:

NSArray *arrayReference = [string1 componentsSeparatedByString:@" "]; 
NSArray *arrayUser = [string2 componentsSeparatedByString:@" "];


我比较数组:

NSMutableArray *arrayResult; 

for (int i = 0; i < arrayReference.count ; i++)
{
NSString *stringReference = [arrayReference objectAtIndex:i];
NSString *stringUser = [arrayUser objectAtIndex:i];

if ([stringReference isEqualToString:stringUser])
{
[arrayResult addObject:stringUser];
}
else {
[arrayResult addObject:[NSString stringWithFormat:@"<strong>%@</strong> <italic>%@</italic>",stringUser];
}
}


然后我得到:

NSString *stringResult = [arrayResult componentsJoinedByString:@" "]; 


所以我可以打印:

伊尔·安拉·阿拉·拉普林森监狱

没关系,我可以得到用户的错误。

但是当数组没有相同的计数时我有问题!

如果我有 :

NSString *string1 = @"Il alla a la prison sur le champ";
NSString *string2 = @"Il fjdbfds alllla a la prison fdnfs sur le cahmp";


我要打印:

Il fjdbfds alllla alla a la监狱fdnfs sur le cahmp冠军

当我输入for(...)时,应用程序崩溃,因为我试图将nil对象插入NSString

请帮助我,如果需要贝宝捐赠。

谢谢大家

对于Martin来说,世界上最好的开发人员:

字符串用户:
伊尔·阿勒·勒·勒·尚普·拉贾普监狱,盐湖城伊尔·拉普埃拉·帕尔松·诺姆,路易·普里斯·拉梅纳和路易·帕拉《日月潭》,《营养与品味》,《死刑》和《保护先贤》。真实的回忆与简单。 Il fut pere,frere,ami,eveque pour benir seulement。 Il lui enseigna tout,en le rassurant et en le conantant。 Cet homme allait丧葬者。 La mort etait pour lui comme un abime。 Debout et fremissant sur le seuil lugubre,il reculait avec horreur。不知不觉中,人们对冷漠无情。可以谴责,起诉或起诉,否则将无法获得名誉的上诉。死者无国界医生组织的无罪陪审团L'eveque lui fit voir une clarte。

字符串参考:Il alla sur le champàla监狱,ilDescitit au Cabanon du Saltimbanque;伊尔·拉·阿佩拉·帕尔松·诺姆,路易·普利特·拉·梅和路易·帕拉Il passa toute lajournéeauprèsde lui,oubliant la nourriture et le sommeil,Dieu pour l'memecondamné和priant lecondamnépour la sienne propre。 Il lui dit les meilleuresvérités,qui sont les plus simples。 Il futpère​​,frère,ami,évêquepourbénirseulement。 Il lui enseigna tout,en le rassurant et en le conantant。 Cet homme allait mourirdésespéré。 La mortétaitpour lui comme unabîme。卢布尔雅布州立大学的辩论与辩论。 Il n’était pas assez无知倒入绝对的冷漠。可以谴责,伪造证件,并可以在rompuçàetlàautour de lui cette cloison qui nousséparedumystèredes selects et que nous appelons上找到自己的名字。法属加泰罗尼亚和其他国家的航行不明朗国际旅行社。 L'évêquelui适合voir uneclarté。

结果字符串:
监狱,监狱,盐湖城下的监狱路易斯·普里斯·普里特·普赖特·拉梅·拉·帕拉之子Il passa toute lajournéeauprésauprèsde lui,oubliant la nourriture et le sommeil,Diant peu pour l'ame l'âmeducondmanécondamné和priant lecondamnépour la sienne propre。 Il lui dit les meilleuresverérités,qui sont les plus simples。 Il futpère​​,frère,père,frèreami,vequeévêquepour benirbénirseulement。 Il lui enseigna tout,en le rassurant et en le conantant。 Cet homme allait mourir ** desperer。 désespéré。 La mort etaitétaitpour lui comme unabîme。 Debout et fremissantfrémissantsur le ce seuil lugubre,il reculait avec horreur。 Il n'etaitn'étaitpas assez愚昧无知绝对无所谓绝对无所谓。可以谴责,起诉,提起诉讼,或选择自动提款权。 _deléede sans cesse au dehors_ de ce monde parcesbrèchesbriales fatales,te de voyait que desténèbres。 L'évêque_lui cette coison qui nous separe du lystere des Chooses et que nous appelons la vie。死者无国界医生组织的无罪陪审团L'eveque lui fit voir une clarte。克拉特

最佳答案

这是你想要的?

NSString *string1 = @"Il alla a la prison sur le champ";
NSString *string2 = @"Il fjdbfds alllla a la prison fdnfs sur le cahmp";

NSMutableArray *array1 = [[string1 componentsSeparatedByString:@" "] mutableCopy];
NSMutableArray *array2 = [[string2 componentsSeparatedByString:@" "] mutableCopy];
NSMutableArray *goodArray = [NSMutableArray array];

while ([array1 count] > 0 && [array2 count] > 0) {
// Check if first word of array2 occurs in array1:
NSString *word = [array2 objectAtIndex:0];
NSUInteger idx = [array1 indexOfObject:word];
if (idx == 0) {
// correct word
[goodArray addObject:word];
[array1 removeObjectAtIndex:0];
[array2 removeObjectAtIndex:0];
} else if (idx == NSNotFound || idx > 4) {
// extra word in array2
[goodArray addObject:[NSString stringWithFormat:@"<strong>%@</strong>", word]];
[array2 removeObjectAtIndex:0];
} else {
// missing word from array1
word = [array1 objectAtIndex:0];
[goodArray addObject:[NSString stringWithFormat:@"<em>%@</em>", word]];
[array1 removeObjectAtIndex:0];
}
}
// Remaining missing words:
for (NSString *word in array1) {
[goodArray addObject:[NSString stringWithFormat:@"<em>%@</em>", word]];
}
// Remaining extra words:
for (NSString *word in array2) {
[goodArray addObject:[NSString stringWithFormat:@"<strong>%@</strong>", word]];
}

NSString *stringCorrected = [goodArray componentsJoinedByString:@" "];
NSLog(@"%@", stringCorrected);


输出:

Il <strong>fjdbfds</strong> <strong>alllla</strong> <em>alla</em> a la prison <strong>fdnfs</strong> sur le <strong>cahmp</strong> <em>champ</em>


或呈现为HTML:

Il fjdbfds alllla alla a la监狱fdnfs sur le cahmp冠军

关于iphone - NSMutableArray比较不同计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15615469/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com