Post by haichen » 10 Jan 2020, 10:58
Ich hab mir noch mal Gedanken darüber gemacht, und festgestellt, dass das nur für einstellige Listenmitglieder, also Ziffern und Buchstaben funktioniert.
Bei einer Liste zB mit 111,11 findet sich 11 in 111 wieder und wird als doppelt nicht gespeichert. Test:="111,11,aaa,aa,12345,34"
Sollen doppelte mehrstellige Zahlen und/oder Wörter aus einer Liste entfernt werden, müsste so etwas funktionieren:
Code: Select all
Test:="111,11,aaa,aa,12345,34,34,111,aa,4,4,2,3,a,b,c,aaa,b,c,111,2,4,3,c,b,11,aa,2,3,1"
; => 111,11,aaa,aa,12345,34,4,2,3,a,b,c,1
Liste := ""
test:=trim(test,",")
Loop, parse, test, `,
If !InStr( "," Liste ",", "," A_LoopField ",")
Liste .= A_LoopField ","
Liste:=trim(Liste,",")
MsgBox, % Liste
Ich hab mir noch mal Gedanken darüber gemacht, und festgestellt, dass das nur für einstellige Listenmitglieder, also Ziffern und Buchstaben funktioniert.
Bei einer Liste zB mit 111,11 findet sich 11 in 111 wieder und wird als doppelt nicht gespeichert. Test:="111,11,aaa,aa,12345,34"
Sollen doppelte mehrstellige Zahlen und/oder Wörter aus einer Liste entfernt werden, müsste so etwas funktionieren:
[code]Test:="111,11,aaa,aa,12345,34,34,111,aa,4,4,2,3,a,b,c,aaa,b,c,111,2,4,3,c,b,11,aa,2,3,1"
; => 111,11,aaa,aa,12345,34,4,2,3,a,b,c,1
Liste := ""
test:=trim(test,",")
Loop, parse, test, `,
If !InStr( "," Liste ",", "," A_LoopField ",")
Liste .= A_LoopField ","
Liste:=trim(Liste,",")
MsgBox, % Liste[/code]