我是 iPhone 新手。我有一点疑问,我有很多字符串(近 66 个),格式为 href="/mp3/KJV/21_Ecc/Ecc_KJV.zip" 在单个字符串中,但所有这些的区别在于更改名称Ecc 的位置,但格式相同。所以,我的要求是如何使用正则表达式获取以 (href=") 开头并以 (.zip) 结尾的所有字符串,以及如何为上面的格式字符串来标识该格式的所有字符串。
问问题
178 次
2 回答
0
请试试这个。希望这可以帮助你。谢谢
NSString *param = nil;
NSString *objString=[[NSString alloc]initWithString:@"href=\"/mp3/KJV/21_Ecc/Ecc_KJV.zip\""];
NSRange start = [objString rangeOfString:@"href="];
if (start.location != NSNotFound)
{
param = [objString substringFromIndex:start.location + start.length];
NSRange end = [param rangeOfString:@".zip"];
if (end.location != NSNotFound)
{
param = [objString substringToIndex:end.location];
}
}
NSLog(@"Substring==%@",param);
//param now contains your value (or nil if not found)
于 2012-06-19T14:35:37.613 回答
0
NSString *sourceString = ...// your string for search substrings
NSString *pattern = @"href=(.*?).zip";
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:pattern options:0 error:nil];
NSArray *results = [regex matchesInString:sourceString options:0 range:NSMakeRange(0, [sourceString length])];
for (NSTextCheckingResult* result in results)
{
NSString *resultString = [sourceString substringWithRange:result.range];
NSLog(@"%@",resultString);
}
于 2012-06-19T14:40:34.077 回答