我想知道如何从文本框中分割字符串并显示字符串的长度。 我当前的代码不起作用 - 我想知道出了什么问题,因为ide并没有向我显示任何错误,但我真的不敢理解它。
namespace WindowsFormsApp4
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
string hello = stringTextBox.Text;
string[] final = hello.Split(' ');
int showNumber = final.Length;
Console.WriteLine("the length of " + hello + " is " + showNumber);
}
}
}
答案 0 :(得分:3)
Split()
用于使用某个分隔符在子字符串上拆分字符串,并将子字符串作为字符串数组返回。
在你的代码中:
string[] final = hello.Split(' '); // split by space(`" "`)
int showNumber = final.Length;
showNumber
将包含使用Split()
方法分割的子串数(结果数组的长度)。
如果你想得到字符串的长度,只需使用Length
属性:
Console.WriteLine("the length of " + hello + " is " + hello.Length);
编辑(发表评论后):
要获得字符串中的单词数,您应指定单词分隔符:
var words = hello.Split(new string[] {" ", ":"}, StringSplitOptions.RemoveEmptyEntries); // you can pass other separators
var wordsCount = words.Length;
答案 1 :(得分:1)
为什么你需要拆分字符串? String
具有Length
属性,因此您可以使用它:
Console.WriteLine("the length of " + hello + " is " + hello.Length.ToString());
只有当字符串包含空格时,才能进行拆分,而是在空格上拆分。例如,用于将句子分解为单词的方法。如果你想要给定字符串中的每个字符,你可以使用"some string".ToCharArray()
,然后计算它们。