[ARCHIV!] Alle Fragen von Anfängern, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen - 4. - Seite 58
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Ich habe die Funktion zur Ersetzung von Zeichenketten mit Arrays umgeschrieben:
string StrReplaceTwo(string text){
string textMod[] ={""};
string symbols1[] = {"12","15","19","13","14","16"};
string symbols2[] = {"a","b","c","d","e","f"};
string textNew="";
int textLen = StringLen(text);
for (int i1=0; i1<textLen; i1=i1+2)
{
string TwoSymbols = StringSubstr(text,i1,2);
for (int i2=0; i2<ArraySize(symbols1); i2++)
{
if (symbols1[i2]==TwoSymbols) {textNew = textNew + symbols2[ i2 ] ; i2=ArraySize(symbols1) ; }
}
}
return (textNew);
}
Jetzt werden 2 Zeichen pro Zeichenfolge durchlaufen, z. B. wird die Zeichenfolge 1215 durch ab ersetzt. Aber ich bin auf ein Problem gestoßen: Die Funktion lässt Zeichen aus, die nicht im Array enthalten sind, und lässt das letzte Zeichen aus, wenn die Zeichenfolge eine ungerade Anzahl von Zeichen hat. Bitte helfen Sie, die Funktion so zu ändern, dass die Zeichenfolge 1214153 durch a14b3 ersetzt wird. Ich danke Ihnen!
Bitte helfen Sie mir, die Funktion so zu ändern, dass Zeile 1214153 durch a14b3 ersetzt wird. Ich danke Ihnen!
Ich verstehe die Logik nicht, Sie haben 14 im Array, d.h. es sollte durch "e" ersetzt werden. Sie können mit der Parität herumspielen, aber es ist besser, Nullen hinzuzufügen, d. h. 3 durch 03 zu ersetzen.
Ich habe die Funktion zur Ersetzung von Zeichenfolgen durch Arrays ein wenig überarbeitet:
Ich glaube, Sie werden ein bisschen verrückt. Wenn Sie eine Funktion zur Ersetzung von Teilstrings benötigen, können Sie diese Option verwenden:
Ich habe das Ende ein wenig verändert, ich habe die Schleifenfunktion nicht sofort bemerkt.
Ich verstehe die Logik nicht, Sie haben 14 im Array, d.h. es sollte durch "e" ersetzt werden. Sie können mit der Parität herumspielen, aber es ist besser, Nullen hinzuzufügen, d. h. 3 durch 03 zu ersetzen.
Ich glaube, Sie werden ein bisschen verrückt. Wenn Sie die Teilstring-Ersetzungsfunktion benötigen, können Sie diese Option verwenden:
Lians:
Oh, tut mir leid, habe ich nicht bemerkt, dann sagen wir 1217153 auf a17b3, über Parität - die Option, Nullen hinzuzufügen, würde funktionieren, können Sie das tun?
Danke, aber ich kann es nicht kompilieren, es stürzt bei einem String ab:
if(x) textNew +=StrToInteger(TwoSymbols);
hier steht: '+=' - beide Operanden müssen numerisch sein
Wie kann ich es reparieren?
Danke, aber ich kann es nicht kompilieren, es stürzt bei einem String ab:
Es flucht wie folgt: '+=' - beide Operanden müssen numerisch sein
Wie kann ich es reparieren?
Es funktioniert nicht für Strings in MQL4.
Danke, aber ich kann es nicht kompilieren, es stürzt bei einem String ab:
Es ist wie folgt: '+=' - beide Operanden müssen numerisch sein
Wie kann ich es reparieren?