簡體   English   中英

從列表框項目中拆分字符串

[英]splitting string from listbox items

我是列表框,用於存儲用戶輸入的不同字符串。 但我想拆分這些列表框項目,在這些項目中,我希望每個項目的第一個單詞都作為單獨的字符串,而其余部分與其他字符串一樣。 我將列表框項迭代為

foreach (ListItem item in lstboxColumnList.Items)
            {

                column_name = temp + "\" "+item+"\"";
                temp = column_name + "," + Environment.NewLine;
            }

我怎么能得到分割的字符串

假設冷杉詞以空格結尾,則可以使用如下所示的內容:

string firsWord = sentence.SubString(0, sentence.IndexOf(' '));
string remainingSentence = sentence.SubString(sentence.IndexOf(' '), sentence.Length);

我不知道您的列表框項目的格式..但是我假設您的列表框項目至少有2個字,並以空格分隔。.因此,您可以使用。的子字符串和索引進行拆分。

string first = sentence.SubString(0, sentence.IndexOf(" "));
string second = sentence.SubString(sentence.IndexOf(" ") + 1);
    public void Test()
    {
        List<string> source = new List<string> {
            "key1 some data",
            "key2 some more data",
            "key3 yada..."};
        Dictionary<string, string> resultDictionary = source.ToDictionary(n => n.Split(' ').First, n => n.Substring(n.IndexOf(' ')));
        List<string> resultStrings = source.Select(n => string.Format("\"{0}\",{1}", n.Split(' ').First, n.Substring(n.IndexOf(' ')))).ToList;
    }

resultDictionary是一個字典,其關鍵字設置為源列表中每個字符串的第一個單詞。

第二個更接近的查詢符合您的問題要求,即以您指定的格式輸出字符串列表。

編輯:道歉,第一次發布在VB中。

查看:

 var parts = lstboxColumnList.Items.OfType<ListItem>().Select(i => new { 
                          Part1 = i.Text.Split(' ').FirstOrDefault(),
                          Part2 = i.Text.Substring(i.Text.IndexOf(' '))
                       });

 foreach (var part in parts)
 {
     var p1 = part.Part1;
     var p2 = part.Part2;

     // TODO: use p1, p2 in magic code!!
 }

暫無
暫無

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

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