为什么分裂不正常?

时间:2017-11-28 08:55:05

标签: vb.net

这是我的代码:

Dim strVal="Male, Female"
Dim ArrCon = strVal.Split(" , ")

结果:ArrCon.Length2

这意味着字符串被拆分,应该不拆分。

我只想在,之前和之后拆分这个有空格的文字,例如:Male , Female

为什么Split无法正常工作?

1 个答案:

答案 0 :(得分:4)

  

结果:ArrCon.Length为2。

目前尚不清楚你的意图。但我试一试。

问题是您有Option Strict Off。否则你的代码甚至都不会编译,因为String.Split没有只有string的重载。如果您将其设置为Off(从不!)会发生什么,只是字符串的第一个字符被用作分裂分隔符,因此空格。它与使用相同:strVal.Split(" "c)strVal.Split()

相反,你想要这个:

Dim ArrCon = strVal.Split({" , "}, StringSplitOptions.None)

现在使用了整个字符串,因此结果是一个长度= 1的数组,这似乎是预期的。该字符串不包含split-delimiter,因此该数组仅包含整个输入字符串。