2013-08-02 95 views
-1

即时通讯有点麻烦,我的代码和即时通讯需要建议。这对你们来说似乎很简单,所以我很抱歉。我需要将字符串v与字符串s,并查看aa,ee,ea,ae的组合与字符串v匹配并计算结果的次数。比较和计算来自两个不同字符串的组匹配

什么我到目前为止是这样的:

int main (int argc, const char * argv[]) 

{ 
    NSString *s = @"aebeee"; 
    NSString *v [email protected]"ae"; 
    NSInteger length = v.length -1 ; 
    BOOL isGrup = FALSE; 


    for (int i= 0 ; i<length; i++) { 
     if([s characterAtIndex:i] == [v characterAtIndex:0 ]){ 
      isGrup = TRUE; 
     } 

     if(isGrup ==1) 
     { 
     NSLog(@" is equal"); 
     }else{ 
     NSLog(@" is not equal"); 
     } 
    } 

    return(0); 
} 

我知道isGrup = TRUE后,我应该删除的代码;但我只是做了测试,看看结果是否匹配到目前为止。当你看到它的工作原理,但这只适用于一个字符,我如何让它进入下一个并计算我的结果?

+0

是不是[那](http://stackoverflow.com/questions/2166809/number-of-occurrences-of-a-substring-in-an-nsstring)你想要什么? :),顺便说一句,我们在Objective-C中使用“YES”和“NO”代替“TRUE”和“FALSE”。) – HAS

+0

感谢您指出:)没有代码,因为它只是比较“a”和“a “并告诉我结果。我希望它能比较其他字母。 – user2384735

+0

那么,这正是[Matthew在他的回答中所做的](http://stackoverflow.com/a/2166919/1489885)。他甚至使用循环!最后'count'是出现次数;) – HAS

回答

0

什么是NSString? 你可以用char替换它吗?

+0

是的,但我需要使用NSString:NSString类为管理不可变字符串的对象声明编程接口。不可变的字符串是一个文本字符串,它在创建时定义并随后不能更改。 NSString被实现为表示一个Unicode字符数组,换句话说,一个文本字符串。 – user2384735

0

一种思考方式:
使用rangeOfString获取字符串的第一个匹配项。
然后,rangeOfString:options:range从NSLocation(从上一个范围)开始并一次又一次。

+0

必须有一个更简单的方法来做到这一点,尽管如此,如果我这样做,它会看起来不错。 – user2384735

+1

http://stackoverflow.com/questions/2166809/number-of-occurrences-of-a-substring-in-an-nsstring gwdp的响应... – Larme

+0

他们不使用循环我也需要使用循环对不起要提到这一点。 – user2384735

相关问题