我正在使用swift 4,这个代码片段在初始化 n1 变量时抛出了一个错误:
func caseInsensitiveSearch(searchString: String) -> NSRange? {
if let range = self.range(of: searchString, options: .caseInsensitive),
let n1 = NSRange(range, in: self) {
return n1
}
return nil
}
我可以直接传递范围吗?或者有必要将其转换为 NSRange 。
任何想法??
答案 0 :(得分:0)
这是因为你试图取消绑定非可选值,你可以直接返回它:
func caseInsensitiveSearch(searchString: String) -> NSRange? {
if let range = self.range(of: searchString, options: .caseInsensitive) {
return NSRange(range, in: self)
}
return nil
}