70 votes

Comment supprimer les 3 premiers caractères de NSString ?

J'ai une chaîne de caractères comme ceci "A. rahul VyAs"

et je veux enlever "A." et l'espace après le "A." pour que la nouvelle chaîne soit "rahul VyAs".

Comment puis-je y parvenir ?

251voto

Alex Rozanski Points 26107

Vous pouvez utiliser le NSString méthodes d'instance substringWithRange: o substringFromIndex:

NSString *str = @"A. rahul VyAs";
NSString *newStr = [str substringWithRange:NSMakeRange(3, [str length]-3)];

o

NSString *str = @"A. rahul VyAs";
NSString *newStr = [str substringFromIndex:3];

12 votes

Vous devez également vérifier s'il y a au moins 3 caractères dans la chaîne.

3voto

The-Rooster Points 77

Il s'agit d'une solution que j'ai vue spécifiquement pour supprimer les préfixes apparaissant régulièrement et résoudre la réponse à la question Comment supprimer "A." ?

NSString * name =  @"A. rahul VyAs";
NSString * prefixToRemove = @"A. "; 
name = [name stringByReplacingOccurrencesOfString:prefixToRemove withString:@""];

Ce code supprimera ce que vous lui demandez de supprimer/modifier si le jeu de caractères existe, comme "A.". même si les trois caractères (ou plus/moins) se trouvent au milieu de la chaîne.

Si vous vouliez supprimer rahul vous le pouvez. Il s'agit d'une méthode différente dans la mesure où vous spécifiez exactement ce que vous voulez supprimer ou modifier, et si cela existe quelque part dans la chaîne, cela sera supprimé ou modifié.

Si vous souhaitez uniquement supprimer un certain nombre de caractères du début du texte, qui sont toujours aléatoires ou inconnus, utilisez la méthode [string length], qui est la meilleure réponse.

Si vous voulez supprimer ou de changer certains caractères qui apparaissent de manière répétée, la méthode que j'ai utilisée le permettra, de manière similaire à Wordsearch sur les éditeurs de documents.

2voto

rakeshNS Points 2332

Essayez ça,

char *string=[@"A. rahul VyAs" cStringUsingEncoding:NSUTF8StringEncoding];
char *subString=&name[3];
NSString *newString=[NSString stringWithCString:subString encoding:NSUTF8StringEncoding];

-1voto

Alex Zavatone Points 901

C'est aussi simple que ça :

myString = [myString subStringFromIndex:3]

C'est tout.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X