正则表达式将多项式解析为单项
Regex to parse polynom as monom
我正在尝试解析多项式,例如:
16-3x^25-6-483*x+7+5*x+8-x-15
实际上,我有这个正则表达式:
([+-]?[0-9]*?'*?x('^[0-9]+)?)
这将返回:
-3x^25
-483*x
+5*x
-x
这给了我所有带有系数(数字)的部分和一个乱七八糟的部分。
但是我找不到一种方法来获取没有垃圾部分的数字:
16
-6
+7
+8
-15
我可以简单地使用拆分方法:
str.split(/[+-]/)
得到所有的单声道,但这样,我失去了数字前面的标志。
另一个尝试是使用此正则表达式:
([+-]?('d+)?'*?x?)
这将返回我需要的所有部分(带有符号),除了我无法管理此示例中的"power"符号 x^25。
您可以使用以下命令使"文字部分"可选:
(?=.+)([+-]?[0-9]*(?:'*?x(?:'^[0-9]+)?)?)
演示
编辑:正如您所指出的,用[0-9]+
替换[0-9]*
是一个错误,如果没有*
正则表达式将不仅匹配文字元素。所以我把它改回来了,并添加了(?=.+)
以避免匹配空格。
相关文章:
- 显示菜单项
- 如何定义和渲染子菜单项,使用Aurelia's路由器
- 如何在没有2个项目的情况下更改菜单项href
- JQuery超级菜单全宽菜单项
- jQuery在部分上滚动时突出显示菜单项
- 突出显示菜单项及其子菜单项
- 突出显示菜单栏上的活动菜单项
- 可访问的更改菜单项,用于使用不引人注目的JS进行导航,而不是jQuery,
- 可访问性:为什么 Jquery 菜单明确将菜单项 tabindex 设置为 -1
- 当我选择菜单项时,如何播放html5播放器的视频
- 什么脚本隐藏父菜单项
- 如何在两种条件下显示相同的上下文菜单项
- 使用粘性滚动菜单链接打开手风琴式菜单项
- 使用CSS/JavaScript在活动页面上突出显示活动导航菜单项,无id
- 单击后要显示相关的菜单项
- 如何在浏览器中禁用或删除粘贴上下文菜单项
- 使用jquery突出显示下一个菜单项
- 在具有固定菜单的单页网站中定位当前菜单项
- 什么是“已弃用.相反,使用可组合性“的意思在Reactjs Material-UI菜单项中
- 正则表达式将多项式解析为单项