从@删除字符串

时间:2011-04-22 06:21:21

标签: iphone objective-c nsstring

NSString *string=@"test1@sdk.com";

现在我要删除@中字符串的所有字符,结果为“test1”。 请建议我如何做到这一点。 在此先感谢!!

4 个答案:

答案 0 :(得分:1)

您可以使用方法

- (NSString *)stringByReplacingOccurrencesOfString:(NSString *)target 
                                        withString:(NSString *)replacement

所以你的代码应该如下所示。

string = [string stringByReplacingOccurrencesOfString:@"sdk.com" withString:@""];

<强>编辑:

使用componentsSeparatedByString方法,

 NSArray* myArray = [string componentsSeparatedByString:@"@"];

现在你的数组恰好包含两个组件

NSMutableString* myStringBefore = [myArray objectAtIndex:0];

如果您仍然希望@在字符串的末尾..

[myStringBefore appenString:@"@"];

答案 1 :(得分:1)

您可以使用substringToIndex

string = [ string substringToIndex:5 ] ;
// If @ location is subject to change, then first find it's location index and
// pass it.

答案 2 :(得分:1)

 NSMutableString *string1 = [NSMutableString stringWithString: @"test1@sdk.com"];
 NSArray* arr = [string1 componentsSeparatedByString:@"@"];
[string1 deleteCharactersInRange: [string1 rangeOfString: [NSString stringWithFormat:@"@%@",[arr objectAtIndex:1]]]];

答案 3 :(得分:0)

int range=[string rangeOfString:@"@"].location; 
NSLog(@"%d",range); 
NSLog(@"%@",[string substringToIndex:range]);