我可以使用以下代码从字符串中拆分每个单词:
string s = TextBox1.Text.Trim().ToString(); // a b c d e f g h
string[] words = s.Split(' ');
foreach (string word in words)
{
TextBox1.Text += "\n"+word.ToString();
}
此代码返回类似
的输出
一个
b
c
d
e
f
g
h
我想像这样每两个字分开
a b
b c
c d
d e
e f
f g
g h
答案 0 :(得分:6)
您必须将foreach转换为for循环并使用索引
string s = TextBox1.Text.Trim().ToString(); //a b c d e f g h
string[] words = s.Split(' ');
for (int i = 0; i < words.Length - 1; i++)
{
TextBox1.Text += $"\n{words[i]} {words[i + 1]}";
}
如果我们有“ a b c”,它将显示
a b
b c
如果我们有“ a b c d”
a b
b c
c d
答案 1 :(得分:-2)
最好的方法是使用Regex
(正则表达式):
foreach(var s in (new System.Text.RegularExpressions.Regex(@"[^ ]+ [^ ]+")).Matches("a b c d e f"))
TextBox1.Text += s.ToString()+"\n";
您可以在这里看到结果: