第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如果第一個(gè)子字符串在字符串列表中重復(fù),如何刪除元素?

如果第一個(gè)子字符串在字符串列表中重復(fù),如何刪除元素?

C#
叮當(dāng)貓咪 2023-09-09 16:12:54
我遇到一個(gè)情況,如果在逗號(hào)在另一個(gè)元素中重復(fù)之前“968934”部分是相同的,我想從列表中刪除該元素。如果子字符串部分重復(fù),我只想將“655”元素保留在列表中。如果它沒有重復(fù),我想無(wú)論如何保留該元素。我怎樣才能做到這一點(diǎn)?968934,655,814968934,123,814
查看完整描述

3 回答

?
慕尼黑的夜晚無(wú)繁華

TA貢獻(xiàn)1864條經(jīng)驗(yàn) 獲得超6個(gè)贊

假設(shè)您從文件中獲取輸入,您可以簡(jiǎn)單地創(chuàng)建一個(gè)字典,其中 Key 是第一個(gè)子字符串,并且在讀取文件時(shí)將子字符串添加到字典中(如果不存在)。最后,值將包含以該鍵開頭的整行,但僅一次


Dictionary<string, string> keys = new Dictionary<string,string>();

foreach(string line in File.ReadLines("yourInputFile.csv"))

{

    if(!keys.ContainsKey(line.Split(',')[0]))

        keys.Add(line.Split(',')[0], line);

        // or, if you want only the second element

        //keys.Add(line.Split(',')[0], line.Split(',')[1]);

}

現(xiàn)在,您可以通過簡(jiǎn)單的操作輕松檢索獨(dú)特的線條


string[] values = keys.Values.ToArray();

當(dāng)然,所有這些分割都可以只執(zhí)行一次,添加一個(gè)中間數(shù)組變量,然后使用它


Dictionary<string, string> keys = new Dictionary<string,string>();

foreach(string line in File.ReadLines("yourInputFile.csv"))

{

    var splittedLine = line.Split(',');

    if(!keys.ContainsKey(splittedLine[0])

        keys.Add(splittedLine[0], line);

        // or, if you want only the second element

        //keys.Add(splittedLine[0], splittedLine[1]);

}


查看完整回答
反對(duì) 回復(fù) 2023-09-09
?
倚天杖

TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超3個(gè)贊

您是否考慮過使用 group by 和 split


IEnumerable<string> ids = new List<string> {

    "968934,655,814",

    "968934,123,814"

};

ids = from i in ids

      group i by i.Split(',')[0] into g

      select g.FirstOrDefault();


查看完整回答
反對(duì) 回復(fù) 2023-09-09
?
達(dá)令說

TA貢獻(xiàn)1821條經(jīng)驗(yàn) 獲得超6個(gè)贊

使用 LINQ 和 GroupBy,您可以按字符串的第一段進(jìn)行分組,如果有多個(gè)項(xiàng)目具有相同的第一段,則將其刪除。


var items = list

    .Select(s => new 

    { 

        FirstPart = s.Substring(0, s.IndexOf(',')), 

        String = s

    })

    .GroupBy(s => s.FirstPart)

    .SelectMany(g => g.Count() == 1 

        ? new[] { g.First().String } 

        : g.Select(x => x.String.Substring(x.FirstPart.Length + 1)))

    .ToList();


查看完整回答
反對(duì) 回復(fù) 2023-09-09
  • 3 回答
  • 0 關(guān)注
  • 172 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)