使用asp.net C#从字符串中拆分每两个单词

时间:2019-06-28 12:36:24

标签: c# asp.net

我可以使用以下代码从字符串中拆分每个单词:

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

2 个答案:

答案 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";

您可以在这里看到结果:

https://dotnetfiddle.net/rJ8NEQ