假设有一个字符串aabcad,请写一段程序,去掉字符串中不相邻的重复字符串,即上述字符串处理之后的输出结果为:aabcd
NSMutableString * str1 = [[NSMutableString alloc] initWithFormat:@"aabcad"];
for (int i = 0; i < str1.length - 1; i++) {
for (int j = i + 1; j < str1.length ; j++) {
// 由于字符的特殊性 无法使用 字符串 isEqualToString 进行比较 只能转化为ASCII 值进行比较 所以 需要加 unsigined 修饰
unsigned char a = [str1 characterAtIndex:i];
unsigned char b = [str1 characterAtIndex:j];
if (a == b) {
if (j - i > 1) {
// NSRange: 截取字符串 {j, 1} j: 第一个字符开始 1: 截取几个字符
NSRange range = {j, 1};
[str1 deleteCharactersInRange:range];
j = i--;
}
}
}
}
NSLog(@"------ %@-------", str1);
// 多谢各位看官观看. 欢迎下次再来哦...