wie kann ich doppelte oder mehr einträge in einer Liste anzeigen.
z.B:
hier kommt das Wort Rot Doppelt vor.
Code: Select all
list=
(
Rot
Grün
Blau
Braun
Rot
)
msgbox, % Rot
Moderator: jNizM
Code: Select all
list=
(
Rot
Grün
Blau
Braun
Rot
)
msgbox, % Rot
Code: Select all
#NoEnv
Liste =
(
Gelb
Rot
Grün
Blau
Braun
Rot
Blau
)
Sorted := Liste
Sort, Sorted, CL
Array := StrSplit(RTrim(Sorted, "`r`n"), "`n", "`r")
I := 1
M := Array.Length()
Mehrfach := []
Mehrfach.SetCapacity(M)
While (I < M) {
Item := Array[I]
Count := 1
While (I < M) {
If (Item == Array[++I])
Count++
Else
Break
}
If (Count > 1)
Mehrfach.Push({Item: Item, Count: Count})
}
Sorted := ""
Array := ""
For Each, Treffer In Mehrfach
MsgBox, % Treffer.Item . " -> " . Treffer.Count
ExitApp
Code: Select all
#NoEnv
Liste =
(
Gelb
Rot
Grün
Blau
Braun
Rot
Blau
)
counter := {}
Array := StrSplit(RTrim(Liste, "`r`n"), "`n", "`r")
for each, item in Array {
counter[item] := counter.hasKey(item) ? counter[item] + 1 : 1 ;füge dem Eintrag item in counter 1 hinzu oder setze es auf 1 falls noch kein vorheriger Wert existiert
}
Users browsing this forum: No registered users and 61 guests