String vergleichen



  • Hi,

    ich habe eine Textdatei in der z.B. eine Zeile steht --> "CloseRelay(1,3,5,9)". Die Werte in der Klammer können immer verschieden sein.

    Diese Textdatei lese ich nun ein und möchte herausfinden wie der Befehl lautet (in diesem Fall "CloseRelay").
    Die ganze Zeile habe ich einem String übergeben. Mit einer Schleife könnte ich ja Stelle für Stelle bis zum '(' mit "CloseRelay" vergleichen. Das wäre aber ziemlich aufwendig.
    Ich wollte nun mit einer Schleife den einen String "CloseRelay(1,3,5,9)" einem anderen String übergeben. Allerdings nur bis zum '('
    Dann könnte ich den neuen String mit "CloseRelay" vergleichen...

    Es klappt aber nicht ???

    Code:

    String befehl_alt="CloseRelay(1,2,3), befehl_neu;

    for(int j=1; befehl_alt[j] != '('; j++)
    {
    befehl_neu[j]=befehl_alt[j];
    }

    if(befehl_neu=="CloseRelay") {tu was...}



  • Hi schaue in Hilfe nach SubString & strchr.
    strchr liefert postion von (.

    von stell 1 bis geliefert position kannst copieren mit SubStr.

    Gruß
    S.Mathi



  • Hallo

    AnsiString::SubString() ist schon nicht schlecht, aber statt strchr dann doch AnsiString::Pos() oder AnsiString::AnsiPos()

    bis bald
    akari



  • Danke @ akari

    klappt wunderbar...


Anmelden zum Antworten