2012-07-09 114 views
0

我想使用NSRegularExpression以正確的順序完成一些操作。我有一個NSStringNSRegularExpression和NSString比較

my_simple_string 

我想調用一個方法(我的方法,此處無關緊要)就像在CSS樣式所以我NSDictionary我有NSStrings

* 
my* 
my_simple* 
my_simple_string 

我想要做的是我的方法要求上述所有這些值。我目前使用

IsEqualToString 

並比較每個子字符串。但是,這不是一個完美的解決方案,當我在網上做我的研究時,我發現一個建議使用NSRegularExpression的帖子,但我不知道它如何有用。

一個更重要的事情 - 「_」不是分隔符,我沒有分隔符。

編輯:

NSString *str = @"my_simple_string"; 
NSArray *arr = [NSArray arrayWithObjects:@"*",@"my*",@"my_simple*",@"my_simple_string*", nil]; 

for(int i = 0 ; i < [str length] ; i++) { 
    NSString *cut = [str substringToIndex:i]; 
    cut = [cut stringByAppendingString:@"*"]; 
    for(int j = 0; j < [arr count] ; j++) 
     if([cut isEqualToString:[arr objectAtIndex:j]]) 
      NSLog(@"find it!"); 
} 

NSLog(@"-----"); 
+0

請發佈您想用正則表達式替換的代碼片段。就長字符串搜索而言,正則表達式非常強大,所以很有可能你會發現它們也很有用。 – dasblinkenlight 2012-07-09 11:38:33

+0

謝謝,我用一些(簡化)源代碼更新了我的文章。 – Kuba 2012-07-09 12:24:35

回答

0

這看起來像一個典型的正則表達式的應用。您可以在Apple documentation中找到有關如何使用NSRegularExpression的示例。

如果這是你第一次處理正則表達式,你最好在互聯網上查看一些教程(其中有很多)。