0

重複の可能性:
iphoneの文字列から条件に基づいてサブ文字列を取得するiphone
の2つの文字列の間にある文字列を識別する

私はiPhoneを初めて使用します。少し疑問があります。つまり、href = "/ mp3 / KJV / 21_Ecc / Ecc_KJV.zip"の形式のような文字列がたくさんありますが、それらすべての違いは、 Eccの場所ですが、すべて同じ形式です。したがって、私の要求は、正規表現を使用して(href = ")で始まり(.zip)で終わるすべての文字列を取得する方法と、上記のフォーマット文字列は、そのフォーマットのすべての文字列を識別します。

4

2 に答える 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 に答える