0

この正規表現の何が問題なのか教えてください。アルファベットのみが必要で、数字はまったく必要ありません。

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);
}

前もって感謝します。

4

1 に答える 1

1

正規表現には a が.あり、数字も使用できます。次のように正規表現を変更することを再検討してください。

^(?=\\S)()[A-Za-z\\s]{2,50}$

評価する文字列をここに貼り付けていただければ幸いです。次のようなサイトで正規表現をオンラインで試すこともできます: regexpal.com 乾杯。

于 2013-11-11T09:04:34.580 に答える