Autor Thema: Listen subtrahieren  (Gelesen 1778 mal)

Offline Teletambi

  • Junior Mitglied
  • **
  • Beiträge: 63
  • Ich liebe dieses Forum!
Listen subtrahieren
« am: 24.05.04 - 19:40:03 »
Hallo Forum,


ich hab ein kleines Problem mit Listen.  Also ich hab da zwei Listen und möchte nun in einer neuen Liste genau die Werte haben die jeder in der einen noch in der anderen Liste vorkommen.

Also so etwas wie @Keyword(liste1; liste2) nur eben umgekehrt.

Beispiel :
Liste1:="1" : "2" : "3";
Liste2:="1" : "2";

ErgebnisListe := "3";

Vielen Dank für eure Antworten 1

Gruß Teletambi  

Glombi

  • Gast
Re:Listen subtrahieren
« Antwort #1 am: 24.05.04 - 21:43:58 »
Also ich hab da zwei Listen und möchte nun in einer neuen Liste genau die Werte haben die jeder in der einen noch in der anderen Liste vorkommen.
Den Satz versteh ich leider nicht  ???

Du willst aber wohl folgendes:

Liste1:="1" : "2" : "3";
Liste2:="1" : "2";

ErgebnisListe := @Trim(@Replace(Liste1;Liste2;""));
ErgebnisListe

liefert alle Elemente, die in Liste1 aber nicht in Liste2 vorkommen.

Andreas
« Letzte Änderung: 24.05.04 - 22:10:25 von Glombi »

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Listen subtrahieren
« Antwort #2 am: 25.05.04 - 00:36:42 »
Vorab, Teletambi (und ebenso an alle anderen Fragesteller):
- Eine klare Fragestellung hilft nicht nur dem potentiellen Antwortgeber, sondern meist auch gleich dem Fragesteller
- Deine Frage war kein "kleines Problem" mit Listen - das ist schon "hartleibiger"  ;D

Die Antwort auf Deine missglückte Frage
Zitat
Also ich hab da zwei Listen und möchte nun in einer neuen Liste genau die Werte haben die jeder in der einen noch in der anderen Liste vorkommen.
muss lauten:
Diese Liste würde je nach Interpretation unendlich viele oder keine Elemente enthalten. Was ist Deine Alternative zu Liste 1 und Liste 2 ? Da müsste es dann ja eine Liste 3 geben  ;D

Andreas' Vorschlag geht leider auch ins Leere - das setzt voraus, das in Liste 1 mehr steht als in Liste 2.
Liste 1 = A,B,C und
Liste 2 = B,C,D,E
packt die Formel nicht.

Das Schöne an diesem technisch doch sehr hochwertigen  Forum ist, das sich auch potentielle Antwortgeber immer wieder Gedanken machen müssen, die ihnen dann selber wiederum helfen  ;)

Hier also mein Lösungsvorschlag, wobei Field1 und Field2 Deine beiden Listenfelder sind. Der "kleine" Umweg über die temporären Variablen f1 und f2 sowie result1 ist der Tatsache geschuldet, dass @Keywords sich nicht in allen R5er Versionen gleich verhält:

Code
f1 := @ReplaceSubstring (Field1; " "; "~");
f2 := @ReplaceSubstring (Field2; " "; "~");

result1 := @Keywords (f1; f2);
result2 := @ReplaceSubstring (result1; "~"; " ");

@Trim (@ReplaceSubstring (f1 : f2; result2; ""))

HTH,
Bernhard
« Letzte Änderung: 25.05.04 - 00:58:10 von koehlerbv »

Offline Teletambi

  • Junior Mitglied
  • **
  • Beiträge: 63
  • Ich liebe dieses Forum!
Re:Listen subtrahieren
« Antwort #3 am: 25.05.04 - 14:41:34 »
Hallo Andreas & Bernhard,

sry ... dass ich mich hier so schlecht ausgedrückt habe, aber die Antwort (Code) von Andreas hat mich schnell zum Ziel gebracht.

Der von Bernhard eingebrachte Einwand ist berechtigt, ist aber auch gleichzeitig eine Bedingung bzw. ist in diesem besonderem Fall immer so.  (Inhalt Liste1 > Inhalt Liste2)

Vielen Dank für eure Antworten

Teletambi  ;)

Glombi

  • Gast
Re:Listen subtrahieren
« Antwort #4 am: 25.05.04 - 14:58:40 »
Nun ich habe mein Grundschulwissen reaktiviert und messerscharf gefolgert, dass das Komplement von Liste 2 in Bezug auf Liste 1 gesucht war  ;D
Also Liste 2 - Liste 1.

A \ B = {Element in A und Element nicht in B}

Bernhard hat übrigens die Lösung für
A\B vereinigt mit B\A gepostet.

Was Teletambi will, muss er also genau sagen.

Andreas
« Letzte Änderung: 25.05.04 - 15:09:53 von Glombi »

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz