web-dev-qa-db-fra.com

Supprimer le premier caractère de la chaîne si

Je dois supprimer le premier caractère de ma UITextfield s'il s'agit d'un 0.

Malheureusement, je ne sais pas comment extraire la valeur du premier caractère ou extraire les caractères de la chaîne après le premier caractère.

Merci

23
user1923975

Une solution pourrait être:

if ([string hasPrefix:@"0"] && [string length] > 1) {
    string = [string substringFromIndex:1];
}
74
DrummerB

Vous voudriez probablement quelque chose comme ceci, en utilisant hasPrefix:

if ([string hasPrefix:@"0"]) {
    string = [string substringFromIndex:1];
}

Vous pouvez également utiliser characterAtIndex: qui renvoie un unichar:

if ([string characterAtIndex:0] == '0') {
     string = [string substringFromIndex:1];
}

Notez que "a" est le caractère, "a" est la chaîne C et @ "a" est NSString. Ils sont tous de types différents.

6
johankj

Swift 3  

hasPrefix ("0") vérifie si le premier caractère est 0 dans txtField et le supprime

if (self.txtField.text?.hasPrefix("0"))! {         
    self.txtField.text?.remove(at(self.txtField.text?.startIndex)!)
}
3
NLU

Swift 3.0:

var myString = "Hello, World"
myString.remove(at: myString.startIndex)

myString // "Ello, World"
2
Josh O'Connor

Boucle While pour continuer à supprimer le premier caractère tant qu'il est à zéro

while (self.ammountTextField.text?.hasPrefix("0"))! {     
   self.ammountTextField.text?.remove(at: (self.ammountTextField.text?.startIndex)!)
}
0
Nabzos