& operator



  • hi,
    ich habe untere code

    if (daten.Length >= 8 && daten[7] = " A\r\n")
    

    (variable daten ist vom typ string)

    Fehler1:Der Operator "&&" kann nicht auf Operanden vom Typ "bool" und "char" angewendet werden.
    

    wie kann ích dieser fehler beheben.kann jemand bitte helfen??



  • edit



  • µ schrieb:

    daten[7] [b]==[/b] " A\r\n"
    

    Dann wird der nächste Fehler kommen 😉

    Wenn "daten" vom Typ string ist -> "daten[x]" kannst du nur einen "char" vergleichen und keinen kompletten String.



  • Jaja ich war gerade am editieren 😃
    Mir fiel zuerst nur das = statt == auf

    if (daten.Length >= 10 && daten[7] == 'A' && daten[8] == '\r' && daten[9] == '\n')
    

    Edit: Ich brauch schlaf... 😞



  • Das würde auch gehen

    Match m = Regex.Match(daten,"^.{7,}?A\r\n");
    if(m.Success)
    {
    }
    


  • Benutzer_Name schrieb:

    Das würde auch gehen

    Match m = Regex.Match(daten,"^.{7,}?A\r\n");
    if(m.Success)
    {
    }
    

    Regex sind natürlich ein mächtiges Werkzeug, aber in Anbetracht des Könnens des Op halte ich das doch für etwas over the top 🤡


  • Administrator

    µ schrieb:

    Edit: Ich brauch schlaf... 😞

    Du hast den Beitrag doch um die Mittagszeit verfasst? 😮

    GPC schrieb:

    Regex sind natürlich ein mächtiges Werkzeug, aber in Anbetracht des Könnens des Op halte ich das doch für etwas over the top 🤡

    Ein mächtiges und vor allem oftmals im Vergleich zu einfachen String-Operationen langsames Werkzeug. Ich kann mich noch gut erinnern, wie ich eine Anwendung um das ca. 10-fache beschleunigen konnte, nur durch das Entfernen von 1-2 Regex 🙂

    Für einfache Sachen lohnen sich Regex meiner Meinung nach nicht. Denn sonst schiesst man mit Kanonen auf Spatzen. Zudem sind Regex-Ausdrücke meistens nur schlecht lesbar. Dadurch schaden sie auch noch der Wartbarkeit.

    Grüssli


Anmelden zum Antworten