Das Notes Forum

Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: skywook am 04.07.13 - 11:23:16

Titel: Array durchsuchen
Beitrag von: skywook am 04.07.13 - 11:23:16
Hallo,
ich habe einen Array in dem doppelte Werte vorhanden sein können. Gibt es eine Möglichkeit herauszufinden wie viel mal der Wert vorkommt ohne den Array durchzulaufen?

z.B.
Hans
Test
Markus
Hans

=> 2x Hans

Für einen Tipp wäre ich dankbar.
Titel: Re: Array durchsuchen
Beitrag von: koehlerbv am 04.07.13 - 11:55:17
In String imploden, dann ein Replace mit Suchbegriff --> Leerstring, dann wieder Explode und Fulltrim.
Über das Ganze ein Vergleich der Elemente "vorher / nachher".

HTH,
Bernhard
Titel: Re: Array durchsuchen
Beitrag von: udo187 am 04.07.13 - 12:02:39
Hallo !

Mit "ArrayUnique" ein neues Array erstellen und dann alle Elemente des neuen Arrays mit allen des alten durchlaufen (2xForALL) und Zähler hochzählen.

Gruß
Udo
Titel: Re: Array durchsuchen
Beitrag von: koehlerbv am 04.07.13 - 12:09:24
Ah, vergiss mein Geschreibsel - Du weisst ja nicht, welcher Begriff doppelt vorkommt. Und da ja auch mehr als ein Literal mehrfach enthalten sein kann, hilft wirklich nur das (einmalige) durchlaufen (und dann beispielsweise in einer List summieren).

Bernhard
Titel: Re: Array durchsuchen
Beitrag von: Tode am 04.07.13 - 13:14:43
In der Formel- Sprache habe ich da mal einen geilen Code- Schnipsel gefunden, der die Anzahl der Elemente zählt:
Code
List1 := @Explode ( "Red,Blue,Red, Green,Red,Blue"; "," ) ; 
List2 := List1 + "@" ; 
List3 := @Unique ( List1 ) ; 
List4 := @ReplaceSubstring  ( List3; List1; List2 ) ; 
List5 := @ReplaceSubstring  ( List4; List3; "" ) ; 
@Length ( List5 )

beschrieben ist das ganze hier (http://searchdomino.techtarget.com/tip/Counting-unique-elements-in-a-text-list)

EDIT: Was richtig geil an der Sache ist: Der Code wurde im November 2003 geposted... ist aber sicherlich noch älter...
Titel: Re: Array durchsuchen
Beitrag von: koehlerbv am 04.07.13 - 13:17:44
Cool  :)