Domino 9 und frühere Versionen > ND6: Entwicklung
Einzelwert innerhalb Liste durch Replace in Listenwert austauschen
mibo11:
Hallo,
steht im Momemt auf dem Schlauch.
Wie tausche ich einen Einzelwert innerhalb einer Liste in einen Listenwert?
Ich habe ein Kontrollkästchen und möchte die Werte dynamisch erzeugen.
quell_liste := "A":"B":"C";
ziel_liste := "Wert1|1": ("Wert2|2":Wert2a|2a" ) :"Wert3|3";
@Replace(quell_liste;ziel_liste)
In meinem Beispiel soll B ausgetauscht werden durch 2:2a.
Wie geht das?
Gruß Sascha
TMC:
D.h. die Liste, die ursprünglich z.B. 3 Listenwerte hatte, soll dann 4 Listenwerte haben, oder?
Vermutlich geht das nicht so einfach.
Vermutlich musst Du die Liste entsprechend neu zusammensetzen.
z.B. mit @Member also die Position suchen. Mit @GetMembers die Listenelemente links und rechts von dem zu ersetzenden Listenelement rausziehen und dann zusammensetzen.
TMC:
Ach ja, der @GetMembers ist leider nicht dokumentiert.
@GetMembers ( Liste ; Position ; [ Anzahl ] )
* Liste: Die Liste aus der Einträge ausgelesen werden sollen
* Position: Die Startposition der Liste, Typ Integer
* Anzahl: Optional. Die Anzahl der Einträge die zurückgegeben werden sollen. Typ Integer.
Wenn das Schlüsselwort nicht angegeben wird, wird nur 1 Eintrag zurückgegeben.
Beispiele:
Dieses Beispiel gibt die Liste "B":"C":"D" zurück
_List := "A" : "B" : "C" : "D" : "E";
@GetMembers(List; 2; 3)
Dieses Beispiel gibt "C" zurück
_List := "A" : "B" : "C" : "D" : "E";
@GetMembers(_List; 3)
koehlerbv:
Ich befürchte auch, das geht nicht "einfach", da sowohl @Replace als auch @ReplaceSubstring immer die Dimension der Ursprungsliste respektieren.
So, wie von Matthias vorgeschlagen prinzipiell vorgeschlagen wurde, würde ich das auch angehen (wenn kein LS in Frage kommt).
Da @Getmembers undokumentiert ist, sollte man vielleicht zur Sicherheit vielleicht doch auf @Subset ausweichen, da dadurch das Konstrukt noch nicht mal sehr aufgebläht würde (vor allem durch die Möglichkeit, negative Werte angeben zu können).
Bernhard
EDIT: Auf das undokumentierte Getmembers hat TMC unterdessen schon hingewiesen ...
TMC:
Stimmt, Bernhard, @Subset ist hier eigentlich besser als @GetMembers, und auch sehr einfach umzusetzen.
Mit diesen undokumentierten Dingen muss man eh immer sehr vorsichtig sein, in der Designerhilfe zur R7 Beta 2 wird @GetMembers übrigens auch nicht erwähnt.
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln