C# 未在[]中指定 string a = "Today is a nice day, and I have been driving"; var res = a.Split(); List<string> groups = new List<

C# 未在[]中指定 string a = "Today is a nice day, and I have been driving"; var res = a.Split(); List<string> groups = new List<,c#,asp.net,string,linq,chunks,C#,Asp.net,String,Linq,Chunks,未在[]中指定 string a = "Today is a nice day, and I have been driving"; var res = a.Split(); List<string> groups = new List<string>(); Regex rgx = new Regex("[^a-zA-Z0-9]"); for (int i=0;i< res.Length;i+=3) { string result = string.Empt

未在
[]
中指定

string a = "Today is a nice day, and I have been driving";
var res = a.Split();
List<string> groups = new List<string>();
Regex rgx = new Regex("[^a-zA-Z0-9]");
for (int i=0;i< res.Length;i+=3)
{
    string result = string.Empty;
    try
    {
        result += rgx.Replace(res[i], ""); 
    }
    catch(Exception)
    {

    }
    try
    {
        result +=" "+ rgx.Replace(res[i+1], ""); ;
    }
    catch (Exception)
    {
        groups.Add(result);
        break;
    }
    try
    {
        result +=" "+ rgx.Replace(res[i + 2], ""); 
    }
    catch (Exception)
    {
        groups.Add(result);
        break;
    }
    groups.Add(result);
}
foreach(var a1 in groups)
{
    Console.WriteLine(a1);
}
string a=“今天天气不错,我一直在开车”;
var res=a.Split();
列表组=新列表();
正则表达式rgx=新正则表达式(“[^a-zA-Z0-9]”);
对于(int i=0;i
这个问题怎么会太宽泛了?我问了一个特别的问题…?你的代码在哪里试图解决这个问题?你的努力在哪里?似乎您刚刚列出了一个需求,坐在那里期待有人为您编写代码。聪明(你现在得到了答案)但对我来说不是一个好问题,我在你的帖子中看到的主要问题是有多个问题(不是集中在一个问题上),你试图达到“最有效的方式”,不管可能是什么。对答案投反对票的用户,请写下原因,或者,如果你不知道该写什么,就不要伤害别人。这个问题怎么会太宽泛了?我问了一个特别的问题…?你的代码在哪里试图解决这个问题?你的努力在哪里?似乎您刚刚列出了一个需求,坐在那里期待有人为您编写代码。聪明(你现在得到了答案)但对我来说不是一个好问题,我在你的帖子中看到的主要问题是有多个问题(不是集中在一个问题上),你试图达到“最有效的方式”,不管可能是什么。对答案投反对票的用户,请写下原因,或者,如果你不知道该写什么,就不要再伤害别人了。这是返回错误的结果,他想扔掉所有的特殊字符。你的例子节省了时间coma@NiravKamani您从解决方案中删除了正则表达式还是?@User987检查此。。。它应该根据您的要求工作…我认为您可以删除
I=I+2
只需在
for
中执行
i+=3
,这将返回错误的结果,并且他希望抛出所有特殊字符。你的例子节省了时间coma@NiravKamani您从解决方案中删除了正则表达式还是?@User987检查此。。。它应该根据您的要求工作…我认为您可以删除
I=I+2
然后在
中做
i+=3
for
哇那是一大块代码哈哈:D@User987我已更新代码以删除除a-z以外的所有符号,A-Z和0-9这很有趣,为什么我的答案被否决了?我猜主持人不同意这个问题,把它搁置起来,并标记为似乎太宽了…我认为这涉及到所有答案。哇,这是一个很大的代码块哈哈:D@User987我已更新代码以删除除a-z以外的所有符号,A-Z和0-9这很有趣,为什么我的答案被否决了?我猜主持人不同意这个问题,把它搁置起来,并标记为似乎太宽泛了…我认为这涉及到所有答案。
Today is a 
nice day and
I have been
driving a car
string str = "Today is a nice day, and I have been driving a car";

str =  Regex.Replace(str, "[^0-9a-zA-Z ]+", "");

string[] arr = str.Split(' ');
int nElements = 0;

for (int i = 0; i < arr.Length; i+=3)
{
    if(i+3 < arr.Length)
    {
        nElements = 3;
    }
    else
    {
        nElements = arr.Length - i;
    }

    Console.WriteLine(arr.Skip(i).Take(nElements).Aggregate((current, next) => current + " " + next));
}
        string str = "Today is a nice day, and I have been driving a car";
        Regex r = new Regex("[a-zA-Z]+", RegexOptions.IgnoreCase);
        var wordCollection = r.Matches(str).Cast<Match>().Select(m => m.Value).ToList();

        var number = wordCollection.Count % 3;
        if (number == 1)
        {
            wordCollection.RemoveAt(wordCollection.Count - 1);
        }
        else if (number == 2)
        {
            wordCollection.RemoveAt(wordCollection.Count - 1);
            wordCollection.RemoveAt(wordCollection.Count - number - 1);
        }

        var list = new List<string>();
        for (var i = 0; i < wordCollection.Count; i+=3)
        {
            list.Add(string.Format("{0} {1} {2}", wordCollection[i], wordCollection[i + 1], wordCollection[i + 2]));

        }
string a = "Today is a nice day, and I have been driving";
var res = a.Split();
List<string> groups = new List<string>();
Regex rgx = new Regex("[^a-zA-Z0-9]");
for (int i=0;i< res.Length;i+=3)
{
    string result = string.Empty;
    try
    {
        result += rgx.Replace(res[i], ""); 
    }
    catch(Exception)
    {

    }
    try
    {
        result +=" "+ rgx.Replace(res[i+1], ""); ;
    }
    catch (Exception)
    {
        groups.Add(result);
        break;
    }
    try
    {
        result +=" "+ rgx.Replace(res[i + 2], ""); 
    }
    catch (Exception)
    {
        groups.Add(result);
        break;
    }
    groups.Add(result);
}
foreach(var a1 in groups)
{
    Console.WriteLine(a1);
}