gpt4 book ai didi

c# - 提取部分字符串

转载 作者:太空宇宙 更新时间:2023-11-03 17:47:39 24 4
gpt4 key购买 nike

我有一个收藏。 coll具有字符串:

Location="Theater=2, Name=regal, Area=Area1"


等等。我必须从字符串中仅提取Name位。例如,在这里我必须提取文本“ regal”

我在查询中苦苦挣扎:

集合位置。 (在这里添加什么)

哪种方法最短,最准确?

[编辑]:如果必须添加到GroupBy子句怎么办

Collection.GroupBy(????);

最佳答案

另一个LINQ样式的答案(没有字典的开销):

var name = (from part in location.Split(',')
let pair = part.Split('=')
where pair[0].Trim() == "Name"
select pair[1].Trim()).FirstOrDefault();




重新分组(编辑):

    var records = new[] {
new {Foo = 123, Location="Theater=2, Name=regal, Area=Area1"},
new {Foo = 123, Location="Name=cineplex, Area=Area1, Theater=1"},
new {Foo = 123, Location="Theater=2, Area=Area2, Name=regal"},
};
var qry = from record in records
let name = (from part in record.Location.Split(',')
let pair = part.Split('=')
where pair[0].Trim() == "Name"
select pair[1].Trim()).FirstOrDefault()
group record by name;
foreach (var grp in qry)
{
Console.WriteLine("{0}: {1}", grp.Key, grp.Count());
}

关于c# - 提取部分字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/539983/

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