begin process at 2012 02 11 13:07:58
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C#

 > 

Windows

 > 

Autre

 > 

Parcourir string en partant de la fin


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Parcourir string en partant de la fin

lundi 11 juin 2007 à 17:41:18 | Parcourir string en partant de la fin

Monico9385

Bonjour,

j'aurai aimé savoir, s'il était possible de parcourir une string mais en partant de la fin. En effet, je voudrait récupérer dans un tableau le dernier élément de ma string avant le dernier espace. En plus clair ca donne ca :

string = toto test toto2 test2

et j'aimerai récupérer monTab[0] = test2, vu que c'est le dernier mot avant le dernier espace.

J'espère que ma question est assez claire.

Merci d'avance pour votre aide


lundi 11 juin 2007 à 17:51:09 | Re : Parcourir string en partant de la fin

niky

Membre Club
Réponse acceptée !
Salut,

Pour récupérer le dernier mot, il te faut récupérer l'indice du dernier espace :

string chaine = "toto test toto2 test2"; // La chaîne où on recherche le dernier mot
int indiceEspace = chaine.LastIndexOf(' '); // Recherche l'indice du dernier espace (renvoie -1 s'il n'y a pas d'espace)
monTab[0] = chaine.Substring(indiceEspace + 1); // Récupère la sous-chaîne qui commence à partir de indiceEspace + 1

Sinon, pour parcourir une chaîne à l'envers tu peux le faire en récupérant le tableau de caractères :
char[] caracteres = chaine.ToCharArray();
for (int i = caracteres.Length - 1; i >= 0; i--)
{
    char c = caracteres[i];
    // ... utiliser le caractère c...
}

J'espère que ça t'aura aidé.
lundi 11 juin 2007 à 18:01:29 | Re : Parcourir string en partant de la fin

Monico9385

Merci beaucoup, je vais essayer ca !
lundi 11 juin 2007 à 19:20:39 | Re : Parcourir string en partant de la fin

Lutinore

Administrateur CodeS-SourceS
Salut,

niky >> inutile de copier la chaine vers un tableau de caractères.. tu peux directement indexer la chaine :

char c = machaine[ i ];
lundi 11 juin 2007 à 19:22:40 | Re : Parcourir string en partant de la fin

Bidou

Administrateur CodeS-SourceS
Réponse acceptée !
Salut,
Des solutions, y'en a pleins!
En voici quelques unes :


// 1
string chaine = "toto test toto2 test2";
string[] res = chaine.Split(' ');
string result1 = res[res.Length - 1];

// 2
string result2 = chaine.Substring(chaine.LastIndexOf(' '));

// 3
StringBuilder sb = newStringBuilder();
for(int i=chaine.Length - 1; i>0; i--)
{
  
if(chaine[i] == ' ') break;
   sb.Insert(0, chaine[i]);
}
string result3 = sb.ToString();

// 4
string result4 = Regex.Match(chaine, @"\s*(\w+)\s*$").Groups[0].Value;

Je te les ai mise par ordre de rapidité.
Le split sur le tableau est donc le plus rapide



-Blog-
lundi 11 juin 2007 à 19:28:04 | Re : Parcourir string en partant de la fin

Lutinore

Administrateur CodeS-SourceS
Réponse acceptée !
Bon alors en voillà une autre.




string[ ] tab = "toto test toto2 test2".Split( ' ' );
Array.Reverse( tab );
lundi 11 juin 2007 à 19:28:13 | Re : Parcourir string en partant de la fin

Monico9385

Ah ok, je n'ai que l'embarras du choix alors.
Merci beaucoup pour vos aides en tout cas




Cette discussion est classée dans : fin, string, parcourir, dernier, partant


Répondre à ce message

Sujets en rapport avec ce message

Comment parcourir une string lettre par letrre ? [ par fredouille312 ] Bonjour à tous,J'ai un tout petit problème:  j'aimerais parcourir (avec une boucle) une string lettre par lettre.J'ai chercher en direction de "indexO Dernier enregistrement effectué [ par HolyDev ] Hi !Comment fait on pour récupérer le numéro identifiant du dernier enregistrement insérer dans une base de donnée avec ce code ://Use a StringBuilder pb bête : parcourir une string [ par trdev ] Bonjour , j'ai un pb bête que je n'arrive pas à résoudre : je récupère une string contenant plusieurs lignes ....et je dois récupérer des éléments de Chercher un caractère dans une string, en partant de la droite ! [ par Nixeus ] Bonjour à tousJe possède une variable STRING contenant un chemin d'accès avec un nom de fichier.Je souhaiterai récupérer juste le nom de ce fichier ! Récupérer la position de début et fin de string dans un fichier c# [ par Karibot ] Bonjour, je cherche à indexer un gros fichier de données qui contient des blocs identiques de 4 lignes chacun. voici la structure de mon fichier: item Lire dans un fichier d'une position A à une position B [ par Karibot ] Bonjour, j'ai un fichier et j'aimerai lire dedans une string. pour la string, je connais la position de début et la position de la fin de la chaine. c l'index se trouve en dehors des limites du tableau (débutant) [ par soft57 ] Bonjour, J'ai un TP à rendre, mais j'ai une erreur que je n'arrive vraiment pas à résoudre. Voici l'énoncé : [quote]Initialiser un tableau de 5 mot Lire une cellule excel [ par S1rK ] Bonjour à tous, Dans le but de me faire un petit widget me permettant de récupérer une donnée d'un fichier excel .xls, j'utilise OleDb pour naviguer SQL [ par bacarndiaye ] J'ai un probleme pour recuperer et tester la valeur envoyer par la requete sql select. [code=cs] string Conn = "SERVER=localhost;" + conversion HTML en PDf via PDf Creator [ par Dan971 ] Bonjour, Je voudrais convertir un fichier HTML en PDF, pour cela j'utilise PDF Creator, mon problème est que windows m'ouvre la fenêtre de sélection


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 4,399 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales