在Swift 5之前,我有这个扩展工作:
fileprivate extension String {
func indexOf(char: Character) -> Int? {
return firstIndex(of: char)?.encodedOffset
}
}
现在,我收到一条弃用的消息:
'encodedOffset' is deprecated: encodedOffset has been deprecated as most common usage is incorrect. Use `utf16Offset(in:)` to achieve the same behavior.
有没有更简单的解决方案,而不是使用utf16Offset(in:)
?
我只需要作为Int传回的字符位置的索引。
utf16Offset(in:)
有什么问题?这是Swift 5的方法
fileprivate extension String {
func indexOf(char: Character) -> Int? {
return firstIndex(of: char)?.utf16Offset(in: self)
}
}