Hallo,
eigentlich dachte ich, es wäre unnötig deswegen hier zu posten, aber langsam denk ich, das vielleicht einer von Euch das auf Anhieb einfacher hinkriegen würde.
Seit heute Nachmittag fummel ich hier an den Vergleichen herum.
Aber so richtig will das nicht.
Es geht darum, daß vier Strings aus Editboxen in Variablen (a,b,c,d) gelesen werden und dann soll getestet werden, ob die Strings aller "gefüllten" Editfelder im Hauptstring vorkommen
Bedingung ist erfüllt,
wenn alle Teilstrings (a,b, c, d) in dem Hauptstring XSTRING vorhanden sind, sofern sie NICHT leer sind
- mindestens 1 Teilstring sollte aber nicht leer sein (macht sonst keinen Sinn);
- ob die 3 anderen etwas enthalten ist optional (sind alles Strings aus den Edit.text)
- Aber wenn sie nicht leer sind - müssen sie alle im Hauptstring enthalten sein, damit es gültig wird.
Code (grob)
Delphi-Quellcode:
if A <> "" then
if pos( A , XSTRING, 1) <> 0 then
if B <> "" then
if pos( B , XSTRING, 1) <> 0 then
if C <> "" then
if pos( C , XSTRING, 1) <> 0 then
if D <> "" then
if pos( D , XSTRING, 1) <> 0 then
Hatte das wie unten - erst mit 4 Zwischenvariablen, damit ich das mit dem AND vergleichen kann -aber dann ist ja noch nicht sicher, daßdie Editfelder nicht leer waren
Hier mal mein Versuch:
Vielleicht so ??? Aber dann ist immer noch nicht geklärt, ob die Teilstrings B, C, D (genaugenommen auch A) überhaupt NICHT "" Leer sind
Delphi-Quellcode:
// wenn alle Teilstrings in XSTRING vorhanden sind
if A <> "" then
if pos( A , XSTRING, 1) <> 0 then
Q := 1;
if B <> "" then
if pos( B , XSTRING, 1) <> 0 then
W := 1;
if C <> "" then
if pos( C , XSTRING, 1) <> 0 then
E := 1;
if D <> "" then
if pos( D , XSTRING, 1) <> 0 then
// =========================
IF Q and W and E and R = 1 then OK !
R := 1;
Danke für jede gute Idee.
EDIT: Sorry, war so in den Browser getippt