objective c正则表达式的全名

时间:2014-01-09 14:06:19

标签: ios objective-c regex

我想根据以下规则验证目标C中的字符串:

1)不允许使用数字和特殊字符。

2)字符串不应以空格开头。

3)字符串不应以空格结尾。

4)字符串中允许任意数量的单词。

5)两个连续的单词之间只允许有一个空格。

目前我正在使用以下代码:

NSString *nameRegex = @"[A-Za-z]+[[\\s][A-Za-z]+]*";
NSPredicate *nameTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", nameRegex];
bool isCheckStringValid = [nameTest evaluateWithObject:checkString];

然而,它不满足第3和第5个。我已经尝试了一个小时,但没有运气。有人能建议我正确的正则表达吗?感谢。

2 个答案:

答案 0 :(得分:1)

我不知道objective-c语法,但像这样的正则表达式应该可以工作:

^[A-Za-z]+(?:\\s[A-Za-z]+)*$

答案 1 :(得分:-1)

我有两种输入类型,必须防止数字和不同的字符。我通过使用此正则表达式“ [A-Za-z] + [[\ s] [A-Za-z] +] $”解决了我的问题