查找excel中前一行的前8个字符是否与当前行的前8个字符匹配

本文关键字:8个 字符 是否 一行 excel 查找 | 更新日期: 2023-09-27 18:07:26

我已经将excel文件中的所有行放入列表中。我试图将所有具有相同id的行相互匹配,并将它们放在列表中。我不确定如何着手做这件事。

//make list a string
for(int i= 1; i <listCount; i++)
{
    mytextfrompdf = myStringList.ToString();
}
//find the matching IDs throughout the list
foreach (string textLine in myStringList)
{   
    //Get the first 8 characters of the string (ID numbers)
    string aNumber = textLine.Substring(0,8);
    //Does ID match the previous ID?
    if (aNumber.LastIndexOf())
    {
       //if  IDs match add to existing list
    }
    else //create a new list                 
}

查找excel中前一行的前8个字符是否与当前行的前8个字符匹配

如果我没看错的话,这可能是一个很好的比较算法:

        List<string>myStringList= new List<string>();
          string prevID= myStringList.First().Substring(0,8);
        foreach (string textLine in myStringList)
        {
            //Get the first 8 characters of the string (ID numbers)
            string aNumber = textLine.Substring(0, 8);
            if (aNumber.Equals(prevID))
            {
                //do whatever you want with them.
            }
            else
            {

            }
            prevID= aNumber ;
        }

足够好吗?

您可以使用LINQ:

将字符串按前8个字符分组。
List<List<string>> result = stringList.GroupBy(textLine => textLine.Substring(0,8))
                                      .Select(g => g.ToList());
                                      .ToList();

这将给你一个字符串列表的列表。