gpt4 book ai didi

c++ - 使用正则表达式检测表达式中的术语

转载 作者:行者123 更新时间:2023-11-30 00:35:48 24 4
gpt4 key购买 nike

我想检测多项式表达式中的所有项,例如

x^2+3x-2

我希望将字符串分隔为“+”和“-”处的子字符串。换句话说,我想单独拥有这些条款。为了简化操作,我在字符串的开头添加“+”或“-”(如果不存在以简化操作)。

+x^2+3x-2

现在,我需要一个可以单独检测所有术语的正则表达式。我还需要记住,可以有尽可能多的术语。

我确实尝试过类似的东西

[+-]?(.+?)

但由于我是正则表达式的新手,我认为我没有能力让它发挥作用。

我需要你的帮助。请注意,在这种情况下,所需的结果是:

  1. +x^2
  2. +3x
  3. -2

提前致谢!

最佳答案

如 Joseph 的回答所示,正则表达式只能完成您所说的有限工作。

但是如果你想处理更复杂的表达式,那么正则表达式将无法胜任。考虑

x^(-2)+3x-2

或未展开的表达式,例如

x^2+3(x-2)-2

这些需要解析器:参见 Regular Expression Vs. String Parsing

关于c++ - 使用正则表达式检测表达式中的术语,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18139038/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com