C# 用自己选择的另一项替换列表项
有一个包含消息的列表。我想当列表包含如下消息时C# 用自己选择的另一项替换列表项,c#,list,C#,List,有一个包含消息的列表。我想当列表包含如下消息时 HelloHelloHello,它应该显示HELLO 我试过了。我也从这里得到了 result.MessageList.Select<string,string>(s => s == "HelloHelloHello" ? "Hello Hello Hello" : s).ToList(); result.MessageList.Select(s=>s==“hellohello”?“Hello”:Hello:s.ToList()
HelloHelloHello
,它应该显示HELLO
我试过了。我也从这里得到了
result.MessageList.Select<string,string>(s => s == "HelloHelloHello" ? "Hello Hello Hello" : s).ToList();
result.MessageList.Select(s=>s==“hellohello”?“Hello”:Hello:s.ToList();
但是它对我不起作用。帮助。如果您确定只会得到一个输出,那么:
result.MessageList.Select<string,string>(s => s == "HelloHelloHello" ? "Hello Hello Hello" : s).ToList()[0];
编辑
List<String> MessageList = new List<string>();
MessageList.Add("HelloHelloHello");
MessageList.Add("Hello1Hello1Hello1");
MessageList.Add("Hello1Hello1Hello1");
MessageList.Add("Hello1Hello1Hello1");
MessageList.Add("HelloHelloHello");
MessageList.Add("HelloHelloHello");
List<String> output = MessageList.Select<string, string>(s => s == "HelloHelloHello" ? "Hello Hello Hello" : s).ToList();
foreach (String str in output)
{
Console.WriteLine(str);
}
List MessageList=newlist();
MessageList.Add(“hellohello”);
MessageList.Add(“Hello1Hello1Hello1”);
MessageList.Add(“Hello1Hello1Hello1”);
MessageList.Add(“Hello1Hello1Hello1”);
MessageList.Add(“hellohello”);
MessageList.Add(“hellohello”);
列表输出=消息列表。选择(s=>s==“HelloHelloHello”?“Hello”:s).ToList();
foreach(输出中的字符串str)
{
控制台写入线(str);
}
这是可行的,我已经在控制台中对其进行了测试。将修改后的枚举作为列表返回。原始列表result.MessageList
未更改
要查看更新的结果,您必须执行以下操作之一:
- 将
的返回值分配回ToList
result.MessageList
- 不要使用LINQ,而是使用循环迭代
,然后修改相应的项result.MessageList
Select
调用的结果。我可以有多条消息。
List<String> MessageList = new List<string>();
MessageList.Add("HelloHelloHello");
MessageList.Add("Hello1Hello1Hello1");
MessageList.Add("Hello1Hello1Hello1");
MessageList.Add("Hello1Hello1Hello1");
MessageList.Add("HelloHelloHello");
MessageList.Add("HelloHelloHello");
List<String> output = MessageList.Select<string, string>(s => s == "HelloHelloHello" ? "Hello Hello Hello" : s).ToList();
foreach (String str in output)
{
Console.WriteLine(str);
}