我需要一个正则表达式来替换给定字符串中的算术运算符。我需要能够用“|”替换操作符。正则表达式来评估和替换算术运算符操作符
例如,
String input = "5.0+9.0-(-2.0)";
String replace = input.replaceAll("[+-//*&&[^.]&&[^(-]]", "|");
在这种情况下,我只打算更换括号外的运营商。我认为正则表达式必须进行更多的修改才能读取括号外的“ - ”,但我应该有想法。
我需要一个正则表达式来替换给定字符串中的算术运算符。我需要能够用“|”替换操作符。正则表达式来评估和替换算术运算符操作符
例如,
String input = "5.0+9.0-(-2.0)";
String replace = input.replaceAll("[+-//*&&[^.]&&[^(-]]", "|");
在这种情况下,我只打算更换括号外的运营商。我认为正则表达式必须进行更多的修改才能读取括号外的“ - ”,但我应该有想法。
这对一个正则表达式似乎很难做到。 我认为最好的方法是提取括号内的表达式并替换剩余字符串中的算术运算。因为正则表达式不能处理括号。
如需帮助提取Regular expression to detect semi-colon terminated C++ for & while loops可能会对您有所帮助。
如果你只是想更换(而不是评估)的算术运算符不属于在括号中,你可以尝试:
String replace = input.replaceAll("[-+*/](?![^(]*\\))","|");
感谢您的意见家伙...我得到它的工作 – user506574 2010-11-14 05:55:20