Search for a string between two known strings
I have a String with this content:
href="http://www.website.com/" /> [...] [...]
I just want to get the central part of the string. H开发者_如何转开发ow is it possible to get the part between @"href="" and @"" />"
Note: Even if it looks like xml-code, it is inside of a NSString.
I got it!
This is the code (not very nice written):
NSRange rr2 = [content rangeOfString:@"href=\""];
NSRange rr3 = [content rangeOfString:@"\" />"];
int lengt = rr3.location - rr2.location - rr2.length;
int location = rr2.location + rr2.length;
NSRange aa;
aa.location = location;
aa.length = lengt;
theString = [theString substringWithRange:aa];
How about
NSString* newNSString =[[[theString substringFromIndex:6] componentsSeparatedByString:@"/\""]objectAtIndex:0];
Or
NSString* newNSString =[[[[theString componentsSeparatedByString:@"href=\""]objectAtIndex:1] componentsSeparatedByString:@"/\""]objectAtIndex:0];
This can be done more compactly:
NSRange end = [source rangeOfString:@"\" />"];
if (end.location != NSNotFound) {
result = [source substringWithRange:NSMakeRange(6, end.location - 6)];
}
精彩评论