NSString正则表达式字符串匹配/搜索

Hud*_*ddy 4 regex objective-c nsstring ios

我有一个像@"random ++ qwerty/asdf"的字符串,我想要删除qwerty部分."random ++"和"/ asdf"将始终相同.我将如何使用正则表达式执行此操作?我很困惑他们的工作方式.

Thi*_*ama 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);

}];
Run Code Online (Sandbox Code Playgroud)


输出:
qwerty
derty
noty

  • 有了这么多可用于正则表达式的资源,对于特定类型的匹配,这样的具体示例仍然有很大帮助!谢谢! (2认同)