我从API获得了一个正则表达式。我需要验证正则表达式是否有效。
这是一个示例正则表达式模式:
/^[a-z0-9_-]{6,18}$/
我需要验证此字符串。
修改:我使用了无效的正则表达式[
尝试了initwithpattern,但它没有抛出任何错误。
答案 0 :(得分:2)
您应该使用给定的正则表达式模式初始化NSRegularExpression
的实例,并检查NSRegularExpression
是否为NULL
。
NSString *regexString = @"/^[a-z0-9_-]{6,18}$/";
NSError *error = NULL;
NSRegularExpression *regex =
[NSRegularExpression regularExpressionWithPattern:regexString
options:0
error:&error];
if (!regex) {
//regex is invalid
}