NSString & substring

SonyySonyy Membre
08:43 modifié dans API AppKit #1
Bonjour,

J'ai un problème avec le substring cocoa je ne retrouve pas la méthode que j'ai dans d'autres langages et qu'il me serait utile dans mon cas présent.

Le problème est que j'ai une chaine de caractères de ce type "12 test test" et je veux récupérer uniquement le 12. Donc j'ai pu voir SubstringToIndex:2, mais dans mon cas, si j'ai une chaine avec "123 test test" le programme ne fonctionnera plus car je ne change pas la valeur du Substring dynamiquement.

Je cherche donc un Substring qui me permet de découpé une chaine du début jusqu'a un espace " ".

Merci de votre aide

Réponses

  • CéroceCéroce Membre, Modérateur
    08:43 modifié #2
    -[NSString componentsSeparatedByString:]
    ou
    -[NSScanner scanUpToString:intoString:].
  • SonyySonyy Membre
    08:43 modifié #3
    Bon solution trouvée il suffit de poster avant d'avoir chercher pendant 3 heures et de trouver la réponse.

    merci.
  • iSofTomiSofTom Membre
    08:43 modifié #4
    Ya plein de solutions, par exemple:

    NSArray* array = [myString componentsSeparatedByString:@" "];
    

    Le tableau contiendra toutes les sous chaines qui étaient séparées par un espace.

    Ou alors tu peux faire:

    NSRange range = [myString rangeOfString:@" "];
    

    range.location sera l'index du premier espace trouvé dans ton NSString!

    Ou alors tu peux faire une boucle pour tester chacun des caractères un par un!

    Ou alors, ...
  • laudemalaudema Membre
    08:43 modifié #5
    Pourquoi pas NSScanner ?
    <br /><br />	int firstInt;<br />	NSScanner *scan = [NSScanner scannerWithString:@&quot;&nbsp; 12 et puis ensuite un 13&quot;];<br />	[scan scanInt:&amp;firstInt];<br />	printf(&quot;firstInt: %i&#092;n&quot;, firstInt);<br />
    

    Quelque soit ce qu'il y a devant et derrière le premier int celui ci sera pris.  Pas seulement pour les integers d'ailleurs
Connectez-vous ou Inscrivez-vous pour répondre.