[Linq] Passer tout les mots d'une phrase en majuscule

Publié le 03 décembre 2008 par Jeremy.jeanson

Voici un petit bout de code réalisé pour Loïc. L'idée ma semblé simple, mais au final ça c'est avéré un peu tordu à écrire.

String nouvellePhrase2 = (from m in phrase.Split(' ') 
                          select String.Concat( 
                            m.Substring(0, 1).ToUpper(), 
                            m.Length > 1 
                                ? m.Substring(1) 
                                : String.Empty)) 
                          .Aggregate((accu, c) => 
                              String.Concat(accu, 
								String.IsNullOrEmpty(accu) 
                                  ? String.Empty 
                                  : " ", c));