On peut tester si une chaîne est numérique à Swift à l'aide de:
extension String { var isNumber: Bool { return !isEmpty && rangeOfCharacter(from: CharacterSet.decimalDigits.inverted) == nil } }
3 Réponses :
Vous pouvez créer une fonction dans une extension
let x: NSString = "32" x.isNumber() // true
OP est posé sur nsstring code> Y a-t-il un moyen similaire de vérifier si une nstring est numérique? B>
Vous auriez besoin de vérifier si la longueur est supérieure à 0 et si l'emplacement de la plage est égal à Nsnotfound:
("1" as NSString).isNumber // true ("a" as NSString).isNumber // false
et vous soyez capable de l'appeler de l'objectif c comme mystring.isnumber
Selon la documentation d'Apple: P>
Une chaîne est une série de caractères, tels que "Swift", qui forme une collection. Les chaînes à Swift sont unicode correcte et la locale insensible insensible et sont conçues pour être efficaces. Les ponts de type de chaîne avec la classe Objective-C Nstring et propose une interopérabilité avec des fonctions C qui fonctionne avec des chaînes. P>
Pour que vous puissiez simplement taper de moulage et utiliser la même méthode. P>
Qu'en est-il de
(nstring comme chaîne) .isnumber code>?
Cela devrait fonctionner à appeler de Swift