У меня есть список таких строк, как:
- Строка1
- String1.String2
- String1.String2.String3
- Другое1
- Другое1.Другое2
- Test1
- Stuff1.Stuff1
- Text1.Text2.Text3
- Folder1.Folder2.FolderA
- Folder1.Folder2.FolderB
- Folder1.Folder2.FolderB.FolderC
Теперь я хотел бы сгруппировать это в:
- String1.String2.String3
- Другое1.Другое2
- Test1
- Stuff1.Stuff1
- Text1.Text2.Text3
- Folder1.Folder2.FolderA
- Folder1.Folder2.FolderB.FolderC
Если «String1» находится в следующем элементе «String1.String2», я проигнорирую первый, а если второй элемент находится в третьем, я возьму только третий «String1.String2.String3» и так далее (n элементов). Строка структурирована как узел / путь и может быть разделена точкой.
Как вы можете видеть в примере с папкой, в папке Folder2 есть два разных элемента вложенных папок, поэтому мне понадобятся обе строки.
Вы знаете, как справиться с этим с помощью Linq? Я бы предпочел VB.Net, но C # тоже подойдет.
С уважением, Ату