我有一个字符串,其中单词数可能会有所不同。喜欢:
string a_string = " one two three four five six seven etc etc etc ";
如何将字符串拆分为每个 5 个单词,并将每个单词添加到一个列表中,使其成为一个字符串列表(每个字符串包含 5 个单词)。我认为列表会更好,因为字符串中的单词数量可能会有所不同,因此列表可以相应地增长或缩小。
我尝试使用正则表达式通过下面的代码行获取前 5 个单词:
Regex.Match(rawMessage, @"(\w+\s+){5}").ToString().Trim();
但有点不确定如何进一步进行并动态、稳健地添加到列表。我想正则表达式可以进一步提供帮助,或者一些很棒的字符串/列表函数?你能指导一下吗?
最终,我希望 list[0] 包含“一二三四五”,list[1] 包含“六七等等等”,依此类推。谢谢。
最佳答案
var listOfWords = Regex.Matches(a_string, @"(\w+\s+){1,5}")
.Cast<Match>()
.Select(i => i.Value.Trim())
.ToList();
关于c# - 使用正则表达式和 C# 拆分字符串并添加到列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11879092/