我有一个像 @"random ++qwerty/asdf" 这样的字符串,我想找出 qwerty 部分。“random ++”和“/asdf”总是相同的。我将如何使用正则表达式来做到这一点?我对它们的工作方式感到困惑。
问问题
7546 次
1 回答
14
问题解决了 !!
这段代码给出了你想要的,
NSString *yourString = @"random ++qwerty/asdf random ++derty/asdf random ++noty/asdf";
NSError *error = NULL;
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"random \\+\\+(\\w+)/asdf" options:NSRegularExpressionCaseInsensitive error:&error];
[regex enumerateMatchesInString:yourString options:0 range:NSMakeRange(0, [yourString length]) usingBlock:^(NSTextCheckingResult *match, NSMatchingFlags flags, BOOL *stop){
// detect
NSString *insideString = [yourString substringWithRange:[match rangeAtIndex:1]];
//print
NSLog(@"%@",insideString);
}];
输出:
qwerty
derty
noty
于 2013-05-10T20:00:34.927 回答