+(BOOL)validateRemark:(NSString*)sText{
NSString*remarkRegex =@"[0-9a-zA-Z\u4e00-\u9fa5\\.\\*\\)\\(\\+\\$\\[\\?\\\\\\^\\{\\|\\]\\}%%%@\'\",。‘、-【】·!_——=:;;<>《》‘’“”!#~]+";
NSPredicate*passWordPredicate = [NSPredicatepredicateWithFormat:@"SELF MATCHES %@",remarkRegex];
return[passWordPredicateevaluateWithObject:sText];
}
注意有双斜杠\\的,有单斜杠的,还有%转义的。其中双斜杠object-c转义后到正则表达式是单斜杠,单斜杠和%object-c转义后就剩下它后面的字符了。
它的限定符包括$()*+.[]?\^{}|,看一个语法上说的并没有]和},但是如果不加程序崩溃。说明也是有他们的。
网友评论