split
принимает регулярное выражение , поэтому вы можете сделать:
String[] terms = myString.split("[-+]");
, и он разделится, когда встретит + или -.
Редактировать: Обратите внимание, что, как сказал Майкл Боргвардт, при таком разделении невозможно определить, какой оператор (+ или -) был разделителем. Если это важно для вашего использования, вы должны использовать StringTokenizer
, как он предложил. (Если вы пытаетесь написать синтаксический анализатор математических выражений, ни один из них не очень поможет.)