java - 在字符串中每一个或两个字符后插入空格

标签 java math spacing infix-notation

我需要编写代码来纠正用户输入。输入是中缀形式的数学表达式。 为了使我的计算正确,我需要每个操作数与运算符间隔开。

你能帮我写一个方法来提供以下预期结果吗?

预期输入:13*21-5+33 预期输出:13 * 21 - 5 + 33

我所做的研究:我只能找出如何在字符串中的每个字符之间添加空格,这对于计算具有两位数值的表达式不起作用。即:1 3 * 2 1 - 5 + 3 3。How to insert Space after every Character of an existing String in Java?

谢谢

最佳答案

使用正则表达式查找数字,然后用空格包围它们:

string.replaceAll("\\d+", " $0 ").trim(); // trim in case numbers are first/last

关于java - 在字符串中每一个或两个字符后插入空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10549013/

相关文章:

java - ChromeDriver(Capabilities 能力) 已弃用

java - Java 流中的聚合函数

java - 通过条件检索日期失败

java - 简单的安卓计算器应用程序

matplotlib pyplot imshow 图像之间的紧密间距

java - 自动增加Swing中的字体大小

python - 具有大数字的 Python ** 和 % 运算符的行为

algorithm - 半可逆整数哈希(请保持开放态度)

javascript - Paper.js PointText 获取基线坐标而不是左下角

css - thead 和 tbody 之间的间距