Hallo zusammen,
aus einer URL muß ich einen SearchString auswerten und den String an den Stellen "+AND+" in eine Liste zerlegen. Mit @Explode(text;"+AND+") kein Problem.
Wenn in meinem String aber "=N" vorkommt, so erkennt @Explode dies anscheinend als ein "+AND+".
Zum Test könnt Ihr in einem Berechneten Text folgendes Beispiel hinterlegen. Mit der Version 1 kein Problem
Beispiel1 :
_text := "Klasse=Vögel+AND+Ordnung=Greifvögel+AND+Gattung=Steinadler";
_text := @Explode(_text;"+AND+");
@For(n := 1;
n <= @Elements(_text);
n := n + 1;
_result := _result + _text[n] + @NewLine
);
_result
Beispiel2: (mit =N)
_text := "Klasse=Vögel+AND+Ordnung=Nreifvögel+AND+Gattung=Nteinadler";
_text := @Explode(_text;"+AND+");
@For(n := 1;
n <= @Elements(_text);
n := n + 1;
_result := _result + _text[n] + @NewLine
);
_result
Könnt Ihr mir den Fehler bestätigen oder möglicherweise den Hintergrund erklären? Bedeutet vielleicht in einer mir nicht bekannten Sprache
=N dasselbe wie "+AND+"
Vielen lieben Dank schonmal!
Das Beispiel steht fast wörtlich so in der Hilfe. Ein @Explode mit "and" trennt nach a, n und d, bei Dir als nach +, A, N und D.
Du solltest +AND+ durch ein einzelnes Trennzeichen ersetzen, das definitiv nicht vorkommt und darüber explodieren
_text := @ReplaceSubstring ("Klasse=Vögel+AND+Ordnung=Nreifvögel+AND+Gattung=Nteinadler"; "+AND+"; "@");
_text := @Explode(_text;"@");