当我在ubuntu 16.04中使用self swift2时,无法将'String'类型的值转换为强制类型'NSString'

Gui*_*rro 10 ubuntu swift

我有一个代码抛出下一条消息的问题:

error: cannot convert value of type 'String' to type 'NSString' in coercion
            return (self as NSString).substringWithRange(range)
Run Code Online (Sandbox Code Playgroud)

我之前可以解决它而不是自我调用,所以这里是代码:

let range = expression.rangeOfFirstMatchInString(self, options: [], range: NSMakeRange(0, self.utf16.count))
    if range.location != NSNotFound {
        return (self as NSString).substringWithRange(range)
    }
    return nil
Run Code Online (Sandbox Code Playgroud)

Dan*_*rom 18

Ubuntu中的swift编译器不会自动识别NSString具有String作为参数获取的构造函数.(在构建时编译器解释它)

而是通过写作来完成自己的工作

NSString(string: self)
Run Code Online (Sandbox Code Playgroud)