如何将数学公式分成数组

我有这个:

"formula=today+Buy+yes-(25*2)-3"

我需要一个数组:

["formula","=","today","+","Buy","+","yes","-","(","25","*","2",")","-","3"] 

我怎样才能像这样分离公式?

回答

要做到这一点,你可以使用正则表达式,搜索字母群体,如formulaAB等,数学运算和数字。该match()方法将返回原始字符串中每个不同部分的数组。

let inputs = [
  'formula=A+B+C-(25*2)-3',
  'formula=today+Buy+yes-(25*2)-3'
].forEach(s => {
  let matches = s.match(/[a-z]+|[=+()*-]|d+/gi);
  console.log(matches);
});

感谢@JaromandaX 改进正则表达式!


以上是如何将数学公式分成数组的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>