NSRegularExpression创建时的Cocoa错误2048

时间:2015-07-22 14:27:52

标签: ios objective-c regex nsregularexpression

我正在尝试从以下内容创建正则表达式:

PushNotificationPayload.apns

但是,遗憾的是它返回了以下错误:

#define RegEX_1_UPPER_1_SPECIAL @"((?=.*[A-Z])(?=.*[$@!%*?&-+_()]).{8,})"

NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern: RegEX_1_UPPER_1_SPECIAL options:0 error:&error];

1 个答案:

答案 0 :(得分:1)

问题是你的特殊字符集合中的连字符。连字符在[]中具有特殊含义,即一系列字符(例如[A-Z])。如果你想搜索文字连字符,你必须逃避:

#define RegEX_1_UPPER_1_SPECIAL @"((?=.*[A-Z])(?=.*[$@!%*?&\\-+_()]).{8,})"