在此代码中,用户将输入一些文本。然后需要按空格分隔-我当前正在使用:

for (String inputSplit : userInput.split("[\\s+]")) { // stuff happens here}

现在,还需要使用存储在名为ops的变量中的任何运算符来拆分它。

private String[] ops = {"+", "-", "*", "/", "%", "^"};

我想保持它引用ops,否则,如果我在其中更改了某些内容,则必须记住也要在此字符串拆分部分中进行更改。

我如何才能将其添加到表达式中,使其显示为“由空白或这些操作中的任何一个拆分”?

例如userInput.split("[\\s+]|[ops]")

额外信息:


我是Java新手
JDK亚马逊Corretto 11
IntelliJ IDEA CE 2019.3.2

最佳答案

使用或条件将分隔符存储在字符串中并传递

String ops = "\\s+|\+|\-|\*|\/|\%|\^"
userInput.split(ops)

09-25 17:10