这就是我目前所拥有的:String[] arr = expression.split("[*=+\\-]");对于像 123*456=56088 这样的方程,结果是 [123, 456, 56088],它工作得很好,但对于这样的方程不起作用:19 - -45 = 64。如何更改代码以适用于这样的方程,以便得到这个数组:[19, -45, 54]。谢谢。
1 回答

Helenr
TA贡献1780条经验 获得超4个赞
检查 Java 文档中的“消极向后查找”。您必须将 - 和 + 分开
类似的东西
split("[*=\\]|(?<![*-+=\\]\s*)[+-]")
添加回答
举报
0/150
提交
取消