C# 用C从字符串中提取前两个单词

C# 用C从字符串中提取前两个单词,c#,C#,我试着用C代码从字符串中提取前两个单词。下面是我正在做的代码 public static string GetDetailsAsString(string Details) { string Items = //how to get first 2 word from string??? if (Items == null || Items.Length == 0) return string.Empty; els

我试着用C代码从字符串中提取前两个单词。下面是我正在做的代码

public static string GetDetailsAsString(string Details)
    {


        string Items = //how to get first 2 word from string??? 

       if (Items == null || Items.Length == 0)
           return string.Empty;
       else
           return Items;
    }

假设单词之间用空格分隔:

var WordsArray=Details.Split(); 
string Items = WordsArray[0] + ' ' + WordsArray[1];

定义单词,如果要获取由空格分隔的前两个单词,可以使用String.Split和Enumerable。获取:

如果要将它们作为单独的字符串:

string firstWords = twoWords.First();
string secondWord = twoWords.Last();
如果要将前两个单词作为单个字符串,可以使用string.Join:


请注意,这种简单的方法将用空格替换新行/制表符。

到目前为止您尝试了什么?你的话是怎么分开的?如果您一个字符一个字符地迭代字符串或使用拆分,这是非常直接的欢迎使用SO!虽然这里的人很乐意帮忙,但请先参观一下!我们希望你在提出要求之前,先努力尝试一下!谢谢你的提醒!谢谢萨维里奥。。这就是我所需要的,而且正在发挥作用。。干杯。我很高兴能帮上忙根据输入大小,String.Split可能不合适,因为它会生成整个子字符串数组。查找第二次出现的应该更快、内存更友好。@NicoSchertler:我们对他的要求和预期的输入字符串了解不够。拆分、获取和加入的问题比前面提到的要多。在成为问题之前,性能不是问题;还有什么可能的要求或期望会使分割方法比寻找空白更合适?我认为很明显,细节中包含某种文本。只要有两个以上的单词,即使是这样,Split所做的也比需要做的要多。感谢您的回复!!我的输入是一个已传递到此方法的文本字段。文本可以是用户在该文本字段中输入的任何内容
string firstWords = twoWords.First();
string secondWord = twoWords.Last();
string twoWordsTogether = string.Join(" ", twoWords);