提问者:小点点

如何使用C#只保留字符串中的某些单词?


我真的找不到这样的问题,我能找到的最接近的问题是如何在字符串中只保留数字字符或字母。 上了很多谷歌,但不知道从哪里开始。

例如,我们有一个输入字符串“Oak PRO DASH CAN USA DASH Ben”。 我们有特定的单词,例如“dash”“USA”“bro”,因此我们需要“扫描”字符串并只保留它们,从而跳过或“删除”字符串中不在列表中的所有部分。 因此我们应该有一个输出字符串,例如“DASH USA DASH”

谢谢!


共1个答案

匿名用户

您可以使用LINQ轻松获得结果。

string source = "OAK PRO DASH CAN USA DASH BEN";
List<string> keywords = new List<string> { "DASH", "USA", "BRO"};  

var x = source.Split(' ');
var result = string.Join(" ", x.Where(p => keywords.Contains(p)));
Console.WriteLine(result);

请注意,我已经删除了您想保留的关键字后面不必要的空格。