次のコードを新しいバージョンのSwiftに更新するにはどうすればよいですか?
self.areaCodeLael.text! = localNumber.substring(to: localNumber.index(localNumber.startIndex, offsetBy: 3))
この投稿をフォローしようとしましたが、正しく理解できません Swift 4? で文字列スライスの添え字を使用するにはどうすればよいですか?)
元のコードをlocalNumber[..<3]
に調整しましたが、次のようになります。
タイプ「String」の値をタイプ「PartialRangeUpTo」のインデックスで下付き文字にすることはできません
この状況ではlocalNumber.prefix(3)
と言います。短くて甘い。
localNumber[..<3]
を使用しようとする際の問題は、範囲としてInt
を渡すことができないことです。 String.Index
を渡す必要があります。
コードは次のようにする必要があります。
let index = localNumber.index(localNumber.startIndex, offsetBy: 3)
self.areaCodeLael.text = localNumber[..<index]
また、text
の後に!
演算子は必要ないことに注意してください。