我试图在每个空间分裂“ “,但它不会让我删除空条目然后找到长度,但它被视为语法错误。

我的代码:

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

我做错了什么?

有帮助吗?

解决方案

嗯, Split 函数的第一个参数需要是一个字符串或字符数组。尝试:

TextBox1.Text.Split(New String() {" "}, StringSplitOptions.RemoveEmptyEntries).Length

在您未指定第二个参数之前,您可能没有注意到这一点。这是因为 Split 方法有一个重载,它接受ParamArray。这意味着对 Split(“string 1”,“string 2”,“etc”)的调用会自动神奇地转换为对 Split(New String(){的调用。 “string 1”,“string 2”,“etc"})

其他提示

尝试:

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

这就是我所做的:

TextBox1.Text = "1 2 3  5 6"
TextBox1.Text.Split(" ".ToCharArray(), StringSplitOptions.RemoveEmptyEntries).Length

结果:长度= 5

// 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);
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top