iOS 检查 NSString 是否以 g 开头的正则表达式

iOS Regular Expression to check whether a NSString starts with g

我不熟悉正则表达式及其在 iOS 中的用法。我有一个场景,我必须检查 NSString 是否以 'G' 开头,这是我的函数 returns布尔条件。我正在像这样传递数据

[self compareStringWithRegex:@"Gmail" withRegexPattern:@".*g"];

-(BOOL) compareStringWithRegex:(NSString *) string withRegexPattern:(NSString *)expression
{
    NSError *error = NULL;
    NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:expression options:NSRegularExpressionCaseInsensitive error:&error];



 NSTextCheckingResult *match = [regex firstMatchInString:string options:0 range:NSMakeRange(0, [string length])];

    if (match){
        return YES;
    }else{
        return NO;
    }
}

我面临的问题是,这个函数 returns 如果我给出错误的条件则为真。请帮助我,如果我的问题不清楚,请告诉我。

如果您真的想使用正则表达式,@"(g)+(\w+)" 应该可以。我在 Regex Tester

上测试过

如果您想使用正则表达式检查以 "g" 开头的字符串,则
将 ".*g" 替换为 "^g" 它将给你指定的结果

 [self compareStringWithRegex:@"Gmail" withRegexPattern:@"^g"];