Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
Hallo, ich brauche etwas Hilfe bei Regex, ich möchte eine mathematische Gleichung an den Grundfunktionen(+, -, /, *, ^) trennen, aber ausdrücke in Klammern sollen zusammen bleiben und unter einem e/E soll einmal die Trennung aussetzen.
meiner ansicht nach ist eien regexp hier fehl am platz und wird nur unreadable code xD
lauf doch einfach den string durch und push die einzelnen gefundenen teile in eine list
sollte viel effektiever sein und wesentlich leichter umzusetzen
Ich habe jetzt nicht ganu auf dem Schirm, was Java in Regex alles unterstützt aber allgemein müsstest du nur eine Liste der Operationen in einen Präfix-Ausdruck packen, etwa so
(?<=[+-*/])
Das bedeutet: Teile des String an allen Stellen an denen vor einem Zeichen +, - * oder/ steht. Nach meinem Verständnis dürfte dann nichts weggeschnitten werden. (wie bei der Regex [+-*/]). Nun hast du die Rechenzeichen noch am Anfang jedes Stringes (außer dem ersten natürlich), die müsste man dann in einem zweiten Schritt extrahieren.
Wenn das nicht funktioniert, dann muss man eventuell alle Rechenoperationen einzeln behandeln und direkt an den Operationen auftrennen. Die verschwinden dann zwar, aber man weiß ja welche Operation gerade bearbeitet wird.
Okay, ich denke ich mache es ohne Regex, danke.
So kann ich sicher auch Arbeit sparen, indem ich direkt auswerten kann ob es jetzt ein Operator oder Operand ist.