我有一个字符串“你好......你怎么样”
我希望在您之前和之后找到子字符串..
如何在目标c中执行此操作?
答案 0 :(得分:84)
找到两个字符串的范围并返回其间的子字符串:
NSString *s = @"hi how are... you";
NSRange r1 = [s rangeOfString:@"how"];
NSRange r2 = [s rangeOfString:@"you"];
NSRange rSub = NSMakeRange(r1.location + r1.length, r2.location - r1.location - r1.length);
NSString *sub = [s substringWithRange:rSub];
答案 1 :(得分:9)
您可以使用NSString substringWithRange
实施例
NSString *string=@"hi how are you";
NSRange searchFromRange = [string rangeOfString:@"how"];
NSRange searchToRange = [string rangeOfString:@"you"];
NSString *substring = [string substringWithRange:NSMakeRange(searchFromRange.location+searchFromRange.length, searchToRange.location-searchFromRange.location-searchFromRange.length)];
NSLog(@"subs=%@",substring); //subs= are
答案 2 :(得分:0)
使用SubstringTOIndex
& SubstringFromIndex
的{{1}}个函数。 NSString
从您通过的索引中获取SubstringFromIndex
的位置& string
函数为您提供了SubstringToIndex
到您传递的索引。
同时尝试使用string
函数,该函数会在您传递的范围之间返回substringWithRange
。
答案 3 :(得分:-1)
使用substringWithRange
...
NSString* substring = [originalString substringWithRange:NSMakeRange(3, originalString.length-6)];