Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Teletambi am 24.05.04 - 19:40:03

Titel: Listen subtrahieren
Beitrag von: Teletambi 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  
Titel: Re:Listen subtrahieren
Beitrag von: Glombi 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
Titel: Re:Listen subtrahieren
Beitrag von: koehlerbv 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
Titel: Re:Listen subtrahieren
Beitrag von: Teletambi 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  ;)
Titel: Re:Listen subtrahieren
Beitrag von: Glombi 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