Votre code fonctionne parfaitement, mais vous devez appeler la variable de chaîne dans laquelle vous stockez la valeur que vous voulez couper.
let stringToTrim = "ABCDE1000001"
let cardtrim = stringToTrim.trimmingCharacters(in: CharacterSet(charactersIn: "ABCDEF")) //value: 1000001
Une solution plus générique est d'utiliser CharacterSet.decimalDigits.inverted
pour ne garder que les chiffres de la chaîne.
let cardtrim = stringToTrim.trimmingCharacters(in: CharacterSet.decimalDigits.inverted)
Sachez que trimmingCharacters
supprime uniquement les caractères du characterset depuis le début et la fin de la chaîne, donc si vous avez une chaîne comme ABC101A101
et que vous voulez supprimer toutes les lettres de, vous devrez utiliser une approche différente (par exemple des expressions régulières).
si l'entrée est 'A1B2C3'? Que faire s'il n'y a pas de chiffres du tout? –
Vérifie ma solution, il filtre tout sauf les nombres. –