2016-09-25 339 views
-1

我有一个NSString,里面有括号。 我想删除括号内的文字。 如何做到这一点? (在Objective-C)删除括号内的字符串[iOS]

例字符串:

塔克奥赫。 (lockeres Ruhrdeutsch)和你好!

我想删除“(lockeres Ruhrdeutsch)”从字符串, 但字符串我必须编辑总是不同的。 如何删除“(”和“)”之间的字符串?

问候

回答

2

使用正则表达式:

NSString *string = @"Tach auch. (lockeres Ruhrdeutsch) Und Hallo!"; 
NSString *filteredString = [string stringByReplacingOccurrencesOfString:@"\\(.*\\)" 
                  withString:@"" 
                   options:NSRegularExpressionSearch range:NSMakeRange(0, string.length)]; 
NSLog(@"%@", filteredString); 

如果你想也考虑结束括号后面空白字符,添加\\s?的正则表达式模式的结束。

1

这里是你可以打电话让你需要的字符串的函数:

-(NSString*)getStringWithBlankParaFrom:(NSString*)oldStr{ 

    NSArray*strArray1=[oldStr componentsSeparatedByString:@"("]; 
    NSString*str2=[strArray1 objectAtIndex:1]; 
    NSArray*strArray2 =[str2 componentsSeparatedByString:@")"]; 
    NSString*strToReplace=[strArray2 objectAtIndex:0]; 

    return [oldStr stringByReplacingOccurrencesOfString:strToReplace withString:@""]; 
} 

该功能适用​​于包含一对括号的字符串**()**

您可以更改它根据您的要求。 希望这有助于!

+0

它适合你吗? –