Ios 正则表达式不工作并且始终检测匹配

Ios 正则表达式不工作并且始终检测匹配,ios,objective-c,regex,ios6,Ios,Objective C,Regex,Ios6,请告诉我这个正则表达式有什么问题。我只需要字母表,不需要数字 NSError *error = NULL; NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"^(?!\\s*$)()[a-zA-Z,\\w,.\\s,-]{2,50}$" opti

请告诉我这个正则表达式有什么问题。我只需要字母表,不需要数字

NSError *error = NULL;
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"^(?!\\s*$)()[a-zA-Z,\\w,.\\s,-]{2,50}$"
                                                                       options:NSRegularExpressionUseUnicodeWordBoundaries
                                                                         error:&error];
NSUInteger numberOfMatches = [regex numberOfMatchesInString:text
                                                    options:0
                                                      range:NSMakeRange(0, [text length])];

if (numberOfMatches == 1) {
    return  nil;
} else {
    return NSLocalizedString(@"name.validation.alert1", nil);
}

提前感谢。

正则表达式中有一个
,它还允许一个数字。 请重新考虑如下更改正则表达式:

^(?=\\S)()[A-Za-z\\s]{2,50}$
如果你能在这里粘贴一些你评估的字符串,那就太好了。 你也可以在regexpal.com这样的网站上在线试用你的正则表达式
干杯。

检查这个:不,还是一样的问题。以下内容没有错误:test1请在此处为regex发布至少一个有效的表达式/字符串,这应该不会给您带来任何错误。也许此regex适用于您<代码>^(?=\S)([A-Za-z\S]{2,50}$Yes…我不希望在开头使用空格^(?=\S)([A-Za-z\S]{2,50}$按预期工作(不包括开头的空格)是的,它工作正常。在obj-c中,其NSRegularExpression*regex=[NSRegularExpression regular expression with pattern:@“^(?=\\S)([A-Za-z\\S]{2,50}$”选项:nsregularexpressionUseUnicode边界错误:&error];