Objective c 字符串模式搜索

Objective c 字符串模式搜索,objective-c,string,nsstring,Objective C,String,Nsstring,我想在NSString中搜索特定值 <INPUT TYPE="HIDDEN" NAME="one" VALUE="getthisvalue"> <INPUT TYPE="HIDDEN" NAME="two" VALUE="getthisvalue"> <INPUT TYPE="HIDDEN" NAME="three" VALUE="getthisvalue"> <INPUT TYPE="HIDDEN" NAME="four" VALUE="getthis

我想在NSString中搜索特定值

<INPUT TYPE="HIDDEN" NAME="one" VALUE="getthisvalue">
<INPUT TYPE="HIDDEN" NAME="two" VALUE="getthisvalue">
<INPUT TYPE="HIDDEN" NAME="three" VALUE="getthisvalue">
<INPUT TYPE="HIDDEN" NAME="four" VALUE="getthisvalue">
我需要在上面的代码中获取getthis值。我在考虑用扫描仪


提前谢谢

使用下一种方法注意:使用ARC:

-(NSMutableArray*)scanInString:(NSString*)string beforeValue:(NSString*)beforeValue afterValue:(NSString*)afterValue{
    NSMutableArray *foundedResults = [NSMutableArray new];
    NSString *allString = [[NSString alloc] initWithString:string];
    BOOL isHavingValue = NO;
    do{
        NSRange beforeRange = [allString rangeOfString:beforeValue];
        if(beforeRange.location != NSNotFound){
            int beforePos = beforeRange.location + beforeRange.length;
            allString = [allString substringFromIndex:beforePos];
            NSRange afterRange = [allString rangeOfString:afterValue];
            if(afterRange.location != NSNotFound){
                isHavingValue = YES;
                int afterPos = afterRange.location;
                NSRange valueRange = NSMakeRange(0, afterPos);
                NSString *value = [allString substringWithRange:valueRange];
                if(value){
                    [foundedResults addObject:value];
                }
            }
            else{
                isHavingValue = NO;
            }
        }
        else{
            isHavingValue = NO;
        }
    }while (isHavingValue);
    return foundedResults;
}
电话:

NSString *string = @"<INPUT TYPE=\"HIDDEN\" NAME=\"one\" VALUE=\"getthisvalue\"><INPUT TYPE=\"HIDDEN\" NAME=\"two\" VALUE=\"ILYA2606\"><INPUT TYPE=\"HIDDEN\" NAME=\"three\" VALUE=\"XXX\"><INPUT TYPE=\"HIDDEN\" NAME=\"four\" VALUE=\"getthisvalue\">";
NSLog(@"results = %@", [self scanInString:string beforeValue:@"VALUE=\"" afterValue:@"\""]);

NSRegularExpression,也许?或者如果是NSScanner,那么你已经有了什么?regex,scanner是很好的类。或者,您可以使用简单的字符串和数组操作,将字符串和数组分开:@=将在最后一个索引处为您提供GetThis值。然后从索引0截断并存储到length-2 discard>。感谢您的快速帮助,我成功地使它与scanner类一起工作。我从一个名字扫描到另一个值,直到最后一行:@richardolt如果你已经解决了你自己的问题,就可以发布答案并接受它。事实上