Найдите дубликаты и уменьшите их до уникальных строк в массиве - PullRequest
1 голос
/ 14 октября 2019

У меня есть массив с разделителями, подобный приведенному ниже:

BKR:::10-03:::2
BKR:::10-04:::1
BKR:::10-04:::4
BKR:::10-07:::7
BKR:::10-08:::6
BKR:::10-10:::2
BKR:::10-10:::2
BKR:::10-11:::3
CR:::10-04:::4
CR:::10-07:::2
CR:::10-07:::2
EL:::10-02:::4
EL:::10-03:::1
EL:::10-04:::2
EL:::10-07:::1
EL:::10-07:::2
EL:::10-07:::2
EL:::10-07:::2
EL:::10-07:::4
RL:::10-08:::6

Я хотел бы уменьшить строки, в которых есть повторяющиеся вторые столбцы (например, строки 2 и 3 имеют BKR 10-4, поэтомуЯ хочу одну строку BKR 10-4, но сложить 1 + 4 и показать как BKR ::: 10-04 ::: 5)

Наконец, массив должен выглядеть так:

BKR:::10-03:::2
BKR:::10-04:::5 
BKR:::10-07:::7
BKR:::10-08:::6
BKR:::10-10:::4 
BKR:::10-11:::3
CR:::10-04:::4
CR:::10-07:::4 
EL:::10-02:::4
EL:::10-03:::1
EL:::10-04:::2
EL:::10-07:::11 
RL:::10-08:::6

Заранее спасибо.

Обновление Вот что я попытался написать после прочтения статьи, которой @ Marcucciboy2 поделился в своих комментариях. Однако я не могу получить этот конкретный индекс соответствующего ключа, чтобы я мог манипулировать значением этого ключа.

For j = 0 To var2.Count - 1

                If dict.Exists(JSONObj2("fields")("worklog")("worklogs")(j + 1)("author")("displayName") + ":" + Right(Left(JSONObj2("fields")("worklog")("worklogs")(j + 1)("updated"), 10), 5)) Then

                    For k = 0 To dict.Count - 1
                        MsgBox dict.Keys(k) + " and its item is " + dict.Items(k)
                    Next k
                Else
                    dict.Add JSONObj2("fields")("worklog")("worklogs")(j + 1)("author")("displayName") + ":" + Right(Left(JSONObj2("fields")("worklog")("worklogs")(j + 1)("updated"), 10), 5), Left(JSONObj2("fields")("worklog")("worklogs")(j + 1)("timeSpent"), 1)
                End If
Next j
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...