我有一个像@“random ++ qwerty / asdf”的字符串,我想要删除qwerty部分。 “random ++”和“/ asdf”将始终相同。我将如何使用正则表达式执行此操作?我对它们是如何工作感到困惑。
答案 0 :(得分: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 强>