2014-09-25 79 views
-1

下一个正则表达式/+|-^[(-],我在String.split(regex)方法中使用。计算器使用正则表达式解析用户输入

我想在有加减的情况下进行拆分,但如果是减去的话,如果在他之前有分开的括号,就不要拆分。

正确示例:toDollar(-45euro)-$30 ----> { toDollar(-45euro) , $30 }

所以我的正则表达式不遵循这个规则,如何修改它?

+0

http://regex101.com/r/lS5tT3/33 “不是......之前”这是一个有效的输入? – vks 2014-09-25 17:42:59

回答

2

您正在寻找的是一个负回顾后:

\\+|(?<!\\()- 

(?<!...)lookbehind和手段

+0

@Mark http://regex101.com/r/lS5tT3/33 – vks 2014-09-25 17:40:49