Je dois séparer les 4 dernières lettres d'une chaîne. Comment puis-je le séparer? La longueur de la chaîne change.
Ex:
var a = "StackOverFlow"
var last4 = a.lastFour //That's what I want to do
print(last4) //prints Flow
Une solution est substringFromIndex
let a = "StackOverFlow"
let last4 = a.substringFromIndex(a.endIndex.advancedBy(-4))
ou suffix
sur characters
let last4 = String(a.characters.suffix(4))
code est Swift 2
Swift 3:
Dans Swift 3, la syntaxe de la première solution a été modifiée en
let last4 = a.substring(from:a.index(a.endIndex, offsetBy: -4))
Swift 4:
Dans Swift 4, cela devient plus pratique:
let last4 = a.suffix(4)
Le type du résultat est un nouveau type Substring
qui se comporte souvent comme un String
. Cependant, si la sous-chaîne est supposée quitter la portée où elle a été créée, vous devez créer une nouvelle instance String
.
let last4 = String(a.suffix(4))
String substr = a.substring(a.length() - 4)
la syntaxe est fausse. aucun type avant vars à Swift.
let a = "1234567890"
let last4 = String(a.characters.suffix(4))
print(last4)
fonctionne sur Swift 3.0