连续指数项的Java正则表达式

时间:2018-07-13 08:40:45

标签: java regex regex-group

我已经测试过此正则表达式:

String regex = "[e][#](.)+[$]

正则表达式可以很好地识别指数项,但是当存在两个或多个连续的指数项时,它会中断。

我用普通代码测试正则表达式:

while(matcher.find()){
String string = matcher.group();
System.out.println("this one: "+string);
}

当我键入表达式时:

e#x$ + 3e#x+1$

字符串等于(e#(x $ + 3e#x + 1 $))

顺便说一句,我在while循环中添加了括号。它们对于 我想要完成的事情。

我希望字符串的结果为(e(#x $))+ 3(e(#x + 1 $)

我知道问题出在“(。)+我认为正在发生的是正则表达式 包括第一个$,我需要它停止在第一个$。

如何在正则表达式中包含此逻辑?

谢谢

0 个答案:

没有答案