-->

如何获得独特的字符的数量在一个字符串(How to get count of Unique char

2019-10-17 08:41发布

我怎样才能得到我的字符串独特字符的数量?

例如:

的NSString * myString的= @ “你好”;

我想在计数为4,而不是5。

我试图用MyString的NSCharacterSet并获得计数,但好像它不工作。

NSCharacterSet * myCharSet = [NSCharacterSet characterSetWithCharactersInString:的myString];

[myCharSet计数];

谢谢你的提示。

Answer 1:

你的代码的衍生物:

NSCharacterSet *myCharSet = [NSCharacterSet
              characterSetWithCharactersInString:@"Hello"];    
NSLog(@"Character Set Count: %d", [myCharSet count]);

看来即使它发出的编译警告工作。 这版画“字符集数:4”当我运行它。

作为替换,NSSet中工作,从而只允许唯一值。 可以将所有字符添加到一个NSSet中,然后获取其计数:

NSSet *set = [NSSet setWithArray:[@"H e l l o" 
                componentsSeparatedByString:@" "]];

NSLog(@"Set Count: %d", [set count]);

这将打印“设置计数:4”



Answer 2:

您的代码对我的作品。 如果您想获得[myCharSet计数]后来在另一程序中,这可能是因为myCharSet需要保留,而最初的设置自动释放。



Answer 3:

尝试这个:

NSString *myString = @"Hello";
    NSRange range = NSMakeRange(location,length);
    NSString *myCharSet = [myString substringWithRange:range];


文章来源: How to get count of Unique chars in a string