我有一个相当具体的问题,我想采用一个等式并将其分解,但也要注意负数。像:
exampleString = "12--5*-2"
使用该字符串我希望将其拆分为3个数字值:
[12, -5, -2]
我通过将"6-8--5"
分割为"(?<!-)-"
来实现双减法
这会给我[6, 8, -5]
但我不知道如何修改它以与所有操作员一起工作,例如:
"5*-2"
---&gt; [5, -2]
我觉得这应该可以工作,我花了几个小时搜索,但没有遇到任何可以做到的事情。任何帮助或建议将不胜感激,欢呼。
答案 0 :(得分:2)
您可以使用如下的正则表达式来分割字符串。
"(?<!\\G)[*/+-])"
正则表达式将在任何指定的字符*,/,+中分割 - 如果前一个字符不匹配( - &gt;' - '将仅在第一个' - '处拆分)。