簡體   English   中英

搜索單詞並獲取整個字符串

[英]Search for word and get whole string

我有一個如下所示的列表框:

DANAHER -- 190,00 € -- 20 PCS -- 12:51:52.361
DANAHER -- 190,00 € -- 270 PCS -- 12:51:57.361
RENAULT -- 37,815 € -- 23 PCS -- 12:51:52.475
RENAULT -- 37,815 € -- 1 PCS -- 12:51:59.475
CAMECO -- 13,854 € -- 20 PCS -- 12:53:13.028
CAMECO -- 13,854 € -- 29 PCS -- 12:53:53.028
SAPSE -- 105,48 € -- 20 PCS -- 12:53:22.631
SAPSE -- 105,48 € -- 80 PCS -- 12:53:27.631

當然,現在每秒鍾就有新公司不斷地添加到列表框中。 我想創建一個文本框,我可以在其中輸入公司名稱,如果存在條目,它會搜索我的列表框,如果存在,它應該獲取字符串的 rest 並將其保存在某處

我的文本框示例

DANAHER RENAULT

所需的 output 應為:

DANAHER -- 190,00 € -- 20 PCS -- 12:51:52.361
DANAHER -- 190,00 € -- 270 PCS -- 12:51:57.361
RENAULT -- 37,815 € -- 23 PCS -- 12:51:52.475
RENAULT -- 37,815 € -- 1 PCS -- 12:51:59.475

到目前為止我已經嘗試過:

   string[] words = richTextBox2.Text.Split(' ');


                var toCheck = words;

               

                var newList = listwithentrys.Where(x => toCheck.Any(check => x.Contains(check)));
                List<String> selectedCollection = newList.ToList();
                listBox4.DataSource = selectedCollection;

但似乎無緣無故無法正常工作。

由於listwithentrysListBox object,因此您需要先獲取行。

然后,您需要檢查這些行是否以words數組中的確切字符串開頭 由於它們后面都有一個空格,因此您可以簡單地檢查該行是否以單詞+空格開頭。

var newList = listwithentrys.Items
    .Cast<string>()
    .Where(x => 
        toCheck.Any(check => x.Trim().StartsWith($"{check} "))
    )

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM