gpt4 book ai didi

C# Lambda 表达式替换字符串数组中的字符串值

转载 作者:行者123 更新时间:2023-11-30 13:43:42 24 4
gpt4 key购买 nike

我正在尝试使用 .net 4.0 lambda 方法删除数组中项目周围的双引号 (")。这是我的代码,但是,这似乎不起作用。

我做错了什么?

string[] sa = new string[] { "\"Hello\"", "\"Goodbye\"", "\"Moshi\"", "\"Adios\"" };

// Trying to replace the
Array.ForEach(sa, s => s.Replace("\"", "")); // Doesn't remove the quotes surrounding the string "Hello".
foreach(var s in sa)
Console.WriteLine(s);

这仍然没有去掉项目周围的 "。

最佳答案

没有可以插入 ForEach 的 lambda 表达式来实现您的目标,因为 lambda 可以采取的操作没有对该元素的写访问权限,并且 string 本身是不可变的

你可以做的是替换整个数组,像这样:

sa = sa.Select(s => s.Replace("\"", "")).ToArray();

这种方法很有效,因为它用一个新创建的数组替换了整个 sa 数组,该数组基于 sa 的元素。

关于C# Lambda 表达式替换字符串数组中的字符串值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51869030/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com