Seite 1 von 1
Gibt es einen Operator "Enthält"?
Verfasst: Do, 05.02.2015 08:35
von vierviervier
Guten Tag,
Verwende häufig Serienbriefe mit bedingtem Text, die auf CalcTabellen mit Spalten mit vielen Kürzeln zugreifen. Es würde die Schreibweise sehr vereinfachen, wenn ich mit dem Operator "enthält" statt EQ arbeiten könnte, da ich sonst immer lange Ketten mit OR bilden muss um alle Kürzel zu berücksichtigen. Sollen z.B. alle Kürzel AA AB AC als wahr gelten, muss ich bisher schreiben (Spalte EQ "AA") OR (Spalte EQ "AB") ..., Spalte ENTHÄLT "A" wäre schöner. Gibt es diesen Operator?
Vielen Dank für Hilfe, vierviervier.
Re: Gibt es einen Operator "Enthält"?
Verfasst: Do, 05.02.2015 11:41
von pmoegenb
Du wiederholst Dich. Siehe
viewtopic.php?f=1&t=65289.
Ich gebe zu, der Satz
Prüft, ob die Variable "x" die Zeichenkette "ABC" enthält
ist etwas irreführend. Besser wäre es gewesen man hätte geschrieben
Prüft ob der Inhalt der Variablen = der Zeichenkette ist.
Re: Gibt es einen Operator "Enthält"?
Verfasst: Do, 05.02.2015 13:40
von vierviervier
Hallo Peter,
hatte ich vergessen, dass ichs schon mal reingestellt habe.
Aber die Frage ist doch immer noch offen: gibt es einen Operator "ENTHÄLT", da mir das "=" nur die identischen Inhalte als wahr gibt.
vierviervier
Re: Gibt es einen Operator "Enthält"?
Verfasst: Do, 05.02.2015 15:11
von pmoegenb
vierviervier hat geschrieben:Aber die Frage ist doch immer noch offen:
Aus meiner Sicht gibst da nichts mehr zu deuteln.
Eigentlich hat
paljass als Gast am 27.01.2015 12:57 bereits die passende Antwort abgegeben, aber Du hast den Satz aus dem zitierten Hilfetext
Prüft, ob die Variable "x" die Zeichenkette "ABC" enthält (wahr = Bedingung erfüllt) oder nicht (falsch = Bedingung nicht erfüllt) wegen dem Wort
enthält anders interpretiert.
Re: Gibt es einen Operator "Enthält"?
Verfasst: Do, 05.02.2015 17:13
von lorbass
pmoegenb hat geschrieben:vierviervier hat geschrieben:Aber die Frage ist doch immer noch offen:
Aus meiner Sicht gibst da nichts mehr zu deuteln.
Ehrlich gesagt, ich erkenne auch noch keine Lösung für
vierviervier's Frage.
Kann ja sein, dass
vierviervier den Text der Programmhilfe zunächst falsch interpretiert hat. Allerdings habe ich die Frage so verstanden, dass
viervierviereinen Operator sucht, der genau das tut, was er beschrieben hat, nämlich einen, der mit einem
Regulären Ausdruck wie z.B. »
.*XYZ.*« äquivalent ist.
Ich kenne einen solchen Operator nicht, was allerdings nicht zwingend heißt, dass es ihn nicht gibt.
Gruß
lorbass
Re: Gibt es einen Operator "Enthält"?
Verfasst: Mi, 11.02.2015 09:46
von vierviervier
Hallo Peter, hallo lorbass,
was das Mißverständnis / Nichtmißverständis betrifft, da blicke ich nach wie vor nicht ganz durch, das ist wohl einer der Fälle wo ein Gespräch die Aufklärung innnerhalb von 30 sec. bringen würde. Der Hilfetext spricht von "enthält", die Funktion des Operators "=" ist aber die, dass nur solche Inhalte als wahr wiedergegeben werden, die identisch sind, richtig?
Aber lorbass, mit dem Stichwort "Regulärer Ausdruck" (der mir neu war) bekomme ich doch, was ich will, oder?
Meine Serienbriefbedingung ist dann:
Spalte1 EQ "*A*"
und damit bekomen ich von den Inhalten AA, AB, AC, BA, BB, BC als wahr: AA, AB, AC, BA, oder?
Hoffentlich auf dem richtigen Weg: vierviervier.
Re: Gibt es einen Operator "Enthält"?
Verfasst: Mi, 11.02.2015 19:58
von lorbass
vierviervier hat geschrieben:mit dem Stichwort "Regulärer Ausdruck" ((…) bekomme ich doch, was ich will, oder?
Um's mit Radio Eriwan zu beantworten: Im Prinzip – Ja.
Ich weiß allerdings nicht, ob in dem hier relevanten Zusammenhang
Reguläre Ausdrücke (RegEx) überhaupt erlaubt sind. Wenn ich es wüßte, hätte ich geschrieben »Verwende diesen
RegEx!«. Es spricht aber nix gegen einen Versuch …
Allerdings enthält dein Vergleich »
Spalte1 EQ "*A*"« gar keinen
RegEx, sondern simple
Wildcards / Joker / Platzhalter. Mit einem
RegEx würde der Vergleich »
Spalte1 EQ ".*A.*"« lauten. Sieht ziemlich ähnlich aus, ist aber was gaaanz anderes.
Wie gesagt: Es spricht nix gegen einen Versuch …
Gruß
lorbass
Re: Gibt es einen Operator "Enthält"?
Verfasst: Do, 12.02.2015 09:26
von vierviervier
Hallo lorbass,
vorausgesetzt der Fehler liegt nicht bei mir, scheint es nicht zu gehen,
Habe eine Spalte mit den Einträgen "Ü" "SÜ" und "S".
Bedingter Text:
Spalte1 EQ ".*Ü.*" soll bei Ü und SÜ "Hallo" anzeigen
Spalte1 EQ "S" soll bei S "Tschüs" anzeigen.
Der Serienbrief zeigt in allen drei Fällen "Tschüs" an.
Ist aber nicht so schlimm, weil es ja mit OR auch ganz gut zu machen ist und um das Wissen um die Möglichkeit Regulärer Ausdrücke bin ich trotzdem froh.
Tschüs, vierviervier.