web-dev-qa-db-fra.com

Supprimer tous les éléments vides du tableau de chaînes

J'ai ceci:

List<string> s = new List<string>{"", "a", "", "b", "", "c"};

Je veux supprimer tous les éléments vides ("") à partir de celui-ci rapidement (probablement via LINQ) sans utiliser une instruction foreach car cela rend le code laid.

37
Elmo

Vous pouvez utiliser List.RemoveAll :

C #

s.RemoveAll(str => String.IsNullOrEmpty(str));

VB.NET

s.RemoveAll(Function(str) String.IsNullOrEmpty(str))
60
Tim Schmelter

Vérifiez avec List.RemoveAll avec String.IsNullOrEmpty() méthode;

Indique si la chaîne spécifiée est nulle ou une chaîne vide.

s.RemoveAll(str => string.IsNullOrEmpty(str));

Voici un DEMO.

11
Soner Gönül
s = s.Where(val => !string.IsNullOrEmpty(val)).ToList();
10
MuhammadHani

J'écris du code ci-dessous pour supprimer la valeur vide

List<string> s = new List<string>{"", "a", "", "b", "", "c"};
s = s.Where(t => !string.IsNullOrWhiteSpace(t)).Distinct().ToList();
0
Sunil Dhappadhule