Autor Thema: Array durchsuchen  (Gelesen 2143 mal)

Offline skywook

  • Senior Mitglied
  • ****
  • Beiträge: 445
  • Ich liebe dieses Forum!
Array durchsuchen
« 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.

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Array durchsuchen
« Antwort #1 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

Offline udo187

  • Junior Mitglied
  • **
  • Beiträge: 98
Re: Array durchsuchen
« Antwort #2 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

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Array durchsuchen
« Antwort #3 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

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.885
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: Array durchsuchen
« Antwort #4 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

EDIT: Was richtig geil an der Sache ist: Der Code wurde im November 2003 geposted... ist aber sicherlich noch älter...
« Letzte Änderung: 04.07.13 - 13:16:30 von Tode »
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Array durchsuchen
« Antwort #5 am: 04.07.13 - 13:17:44 »
Cool  :)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz