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"];
我不熟悉正则表达式及其在 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"];