0
votes

Extension à tester si Nstring est numérique dans Swift

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
    }
}


2 commentaires

Qu'en est-il de (nstring comme chaîne) .isnumber ?


Cela devrait fonctionner à appeler de Swift


3 Réponses :


0
votes

Vous pouvez créer une fonction dans une extension

let x: NSString = "32"
x.isNumber() // true


1 commentaires

OP est posé sur nsstring Y a-t-il un moyen similaire de vérifier si une nstring est numérique?



4
votes

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


1 commentaires

et vous soyez capable de l'appeler de l'objectif c comme mystring.isnumber



0
votes

Selon la documentation d'Apple:

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.

Pour que vous puissiez simplement taper de moulage et utiliser la même méthode.


0 commentaires