由于 "Couldn't create (Metatype) escape NSRegularExpression",无法创建 NSRegularExpression

Can't create NSRegularExpression because of "Couldn't create (Metatype) escape NSRegularExpression"

我正在尝试创建以下内容 NSRegularExpression(我正在尝试查找所有逗号 ,、左括号 (、右括号 ) , 和反斜杠 \):

var error: NSError?
NSRegularExpression(pattern: "[,\(\)\]", options: nil, error: &error)

但它 returns .None 出现以下错误:

Couldn't create (Metatype) escape NSRegularExpression

以及以下 userInfo

NSInvalidValue: "[,\(\)\]"

这是什么意思?

字符 class 中的反斜杠文字未正确转义。它在字符串文字中使用了两个反斜杠而不是四个。

var error: NSError?
NSRegularExpression(pattern: "[,\(\)\]", options: nil, error: &error)

应该是:

var error: NSError?
NSRegularExpression(pattern: "[,\(\)\\]", options: nil, error: &error)

我认为 Couldn't create (Metatype) escape 错误是指未完全转义的反斜杠导致转义最后的方括号,这使得字符 class 定义无效。