2

我想开发一个正则表达式,它只验证具有“A、B 或 C”的字符串。

ABBCCAABBC - 应该经过验证 ABBC - 应该经过验证

ABBDF - 不应该

我想在我的一个 iPhone 应用程序中使用它。

4

3 回答 3

3

验证只有 A、B、C 和非空的字符串:

^[ABC]+$

[ABC]是包含任何 A、B 和 C 字符的字符集。

+表示一个或多个

^表示字符串的开头

$表示字符串结束

如果要接受空字符串,请使用*,这意味着零个或多个,而不是+

于 2013-05-25T12:20:51.290 回答
1

一旦检查这个,

    NSString *stringToBeTested = @"ABCAAAAAAAAA";

    NSString *RGExpression = @"[A-C]{1,}";
    NSPredicate *evaluate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", RGExpression];

    BOOL matched = [evaluate evaluateWithObject:stringToBeTested];
    NSLog(@"%d",matched);

   string         O/P
---------------------------
@"ABCAAAAAAAAA"       1
@"ASD"                0
@"A"                  1
@""                   0
于 2013-05-25T12:39:48.850 回答
1

如果您的范围真的那么简单,只需使用 NSCharacterSet 创建一组允许的字符,然后测试成员资格。

于 2013-05-25T13:00:55.707 回答