类型`String.index(aka`string.CharacterView.index`)不符合协议`_trideable`

时间:2017-10-07 07:32:46

标签: swift

我的类型String.index(又名string.CharacterView.index)不符合协议_Strideable

problem code picture

如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

我不确定为什么String.Index不是_Strideable,但这段代码确实没有意义。

  • stringRange是一个Range<String.CharacterView.Index>?,用来衡量字素集群。
  • NSRegularExpression期待NSString,它由UTF-16代码单元组成。

充其量,你很幸运,而且它们是相同的,而这只是计算长度的一种慢得多的方式。在最坏的情况下,它将正则表达式应用于以代码点中间结尾的子字符串。

你应该这样做:

let range = NSRange(location: 0, length: self.utf16.count)