OGeek|极客世界-中国程序员成长平台

标题: ios - NSRegularExpression 创建上的 Cocoa 错误 2048 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 09:08
标题: ios - NSRegularExpression 创建上的 Cocoa 错误 2048

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

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

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

但是,不幸的是它返回了以下错误:

Error Domain=NSCocoaErrorDomain Code=2048 "The operation couldn’t be completed. (Cocoa error 2048.)" UserInfo=0x7ff6f51b5af0 {NSInvalidValue=(?=.*[A-Z])(?=.*[$@!%*?&-+_]).{8,15}}



Best Answer-推荐答案


问题在于您的特殊字符集合中的连字符。连字符在 [] 中具有特殊含义,即一系列字符(例如 [A-Z])。如果要搜索文字连字符,则必须转义:

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

关于ios - NSRegularExpression 创建上的 Cocoa 错误 2048,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31566057/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://sqlite.in/) Powered by Discuz! X3.4