类型'String.Index'不符合协议'_Strideable'

时间:2018-03-06 13:09:55

标签: swift

我读过this帖子,但似乎有另一个问题。这段代码:

String

(其中if value.range(of: String(formatter.minusSign))?.count > 0 { //STH } formatter对象而NumberFormattervalue)在Swift中产生此错误:

  

类型'String.Index'不符合协议'_Strideable'

如何解决?

1 个答案:

答案 0 :(得分:1)

您必须检查范围是否不是nil

if value.range(of: formatter.minusSign) != nil {
    //STH
}

或 - 如果您想使用范围 - 可选绑定

,则更可取
if let range = value.range(of: formatter.minusSign) {
    // do somthing with the range
}

或只是

if value.contains(formatter.minusSign) {
    //STH
}