我有一个数学方程式
var equation="(4+5.5)*3+4.5+4.2";
当我做
equation.split('').join(' ');
它获得输出,每个角色之间的空间。
( 4 + 5 . 5 ) * 3 + 4 . 5 + 4 . 2
如何在数字和字母之间插入空格?
样本输出:
( 4 + 5.5 ) * 3 + 4.5 + 4.2
有人可以帮我解决问题,提前谢谢。
你可以填补运营商。
var string = "(4+5.5)*3+4.5+4.2",
result = string.replace(/[+\-*/]/g, ' $& ');
console.log(result);
带空格的括号。
var string = "(4+5.5)*3+4.5+-4.2",
result = string
.replace(/[+\-*/()]/g, ' $& ')
.replace(/([+\-*/]\s+[+\-])\s+/, '$1')
.replace(/\s+/g, ' ').trim();
console.log(result);
您可以使用正则表达式并匹配数字标记(数字,可选地后跟句点和其他数字),或匹配任何字符。然后,通过空格加入:
const equation = "(4+5.5)*3+4.5+4.2";
const output = equation
.match(/\d+(?:\.\d+)?|./g)
.join(' ');
console.log(output);