Code simple, optimisation possible?

Code simple, optimisation possible? - C#/.NET managed - Programmation

Marsh Posté le 18-02-2010 à 15:28:14    

Salut,
 
Developpeur occassionnel, il m'arrive souvent de buté sur mes algorythmes; je me débrouille tjs pour les faire fonctionner, mais j'ai l'intime conviction qu'ils sont moches et grandement améliorable.
 
Je poste un exemple, ce genre d'algo sont assez representatif de ce qu'il m'arrive de rencontrer.
 
Traitement sur des chaines, explode, majuscule et tutti quanti.
 
Ici, l'idée est de recevoir une chaine de caractère (de type prénom, composé OU pas, en vrac au niveau des majuscules.) puis de la renvoyer avec une majuscule a chaque mot ou token.
 
JeAn-MarIE => Jean-Marie
JEAN-MARIE=> Jean-Marie
etc.
 

Code :
  1. private static string InitCap(string texte)
  2.         {
  3.             string retour="";
  4.             texte = texte.ToLower();
  5.             string[] split = texte.Split(new Char[] { ' ', '-', '.', ',' });
  6.             for (int i=0; i < split.Length; i++)
  7.             {
  8.                 if (i < split.Length - 1)
  9.                 {
  10.                     retour += split[i][0].ToString().ToUpper() + split[i].Substring(1, split[i].Length - 1) + "-";
  11.                 }
  12.                 else
  13.                 {
  14.                     retour += split[i][0].ToString().ToUpper() + split[i].Substring(1, split[i].Length - 1);
  15.                 }
  16.             }
  17.             return retour;
  18.         }


 
C'est pas très beau, je sais  :sweat:  
 
Merci à tout ceux qui voudront bien m'indiquer des pistes pour améliorer tout ça :)


---------------
ma vie, ma carrière! - Un trait d’union entre des photos et des mots.
Reply

Marsh Posté le 18-02-2010 à 15:28:14   

Reply

Marsh Posté le 19-02-2010 à 08:33:04    

Merci,
 
sinon cette discussion réponds mieux à mon pb :
http://channel9.msdn.com/forums/Te [...] TC/#Page=1
 
;)


---------------
ma vie, ma carrière! - Un trait d’union entre des photos et des mots.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed