7
votes

Utiliser .split pour supprimer les entrées vides

J'essaie de diviser à chaque espace "", mais cela ne me laissera pas supprimer les entrées vides, puis trouver la longueur, mais elle est traitée comme une erreur de syntaxe.

My Code: P>

TextBox1.Text.Split(" ", StringSplitOptions.RemoveEmptyEntries).Length


2 commentaires

Quelle est l'erreur de syntaxe?


Trop longtemps pour que je puisse copier et coller ici, quelque chose à propos de traiter comme un personnage


4 Réponses :


21
votes

Eh bien, le premier paramètre à la fonction Split doit être une gamme de chaînes ou de caractères. Essayez: XXX

Vous n'auriez peut-être pas remarqué cela avant que vous ne spécifiez pas le 2e paramètre. En effet, la méthode Split a une surcharge qui prend dans un paramorray. Cela signifie que des appels vers Split ("String 1", "String 2", "ETC") Auto-magiquement être converti en un appel sur Split (nouvelle chaîne () {"String 1 "," string 2 "," etc "})


1 commentaires

Ne compile pas quand strict est sur.



7
votes

Essayez:

TextBox1.Text.Split(" ".ToCharArray(), StringSplitOptions.RemoveEmptyEntries).Length 


0 commentaires

2
votes

C'est ce que j'ai fait: xxx

résultat: longueur = 5


0 commentaires

1
votes
// char array is used instead of normal char because ".Split()"
// accepts a char array
char[] c = new char[1];
//space character in array
c[0] = ' ';
// a new string array is created which will hold whole one line
string[] Warray = Line.Split(c, StringSplitOptions.RemoveEmptyEntries);

0 commentaires