gpt4 book ai didi

c# - 在使用 Split() 时执行 Trim()

转载 作者:IT王子 更新时间:2023-10-29 03:49:58 25 4
gpt4 key购买 nike

今天我想知道是否有更好的解决方案执行以下代码示例。

string keyword = " abc, foo  ,     bar";
string match = "foo";
string[] split= keyword.Split(new char[] { ',', ';' }, StringSplitOptions.RemoveEmptyEntries);
foreach(string s in split)
{
if(s.Trim() == match){// asjdklasd; break;}
}

有没有一种方法可以在不手动遍历每个项目的情况下执行 trim()?我正在寻找类似“按以下字符拆分并自动修剪每个结果”的内容。

啊,我在发帖前发现了

List<string> parts = line.Split(';').Select(p => p.Trim()).ToList();

How can I split and trim a string into parts all on one line?

我仍然很好奇:是否有更好的解决方案? (或者编译器可能会将它们转换为与 Linq 操作相同的代码输出?)

最佳答案

另一种可能的选择(避免 LINQ,无论好坏):

string line = " abc, foo  ,     bar";
string[] parts= Array.ConvertAll(line.Split(','), p => p.Trim());

但是,如果您只需要知道它是否存在 - 也许是短路?

bool contains = line.Split(',').Any(p => p.Trim() == match);

关于c# - 在使用 Split() 时执行 Trim(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1977340/

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