繁体
055
returnstring;
095
string.substring(index temp.length());
}else{
053
computeStirngNoBracket(temp)
NumberFormatnumberFormat=NumberFormat.getInstance();
string=string.substring(0,index)
*@paramstring
059
//最后计算总的表达式结果
DecimalFormatdecimalFormat=newDecimalFormat(format);
071
068
063
086
096
}
//循环计算所有括号里的表达式
066
075
}
Matchermatcher=null;
}catch(Exceptione){
*@return
056
077
079
while(matcher.find()){
StringregexCheck=“[\\(\\)\\d\\ \\-\\*/\\.]*“;//是否是合法的表达式
065
temp=matcher.group();
try{
097
089
088
/**
*/
074
057
Stringregex=“\\([\\d\\.\\ \\-\\*/] \\)“;//提取括号表达式
064
090
*计算字符串四则运算表达式
072
Stringtemp=““;
084
083
070
}
string=string.replaceAll(“\\s“,““);//去除空格
while(pattern.matcher(string).find()){
062
}
at(obj);
}catch(NumberFormatExceptione){
067
intindex=-1;
string=computeStirngNoBracket(string);
087
092
s=numberFormat.format(obj);
returne.getMessage();(未完待续。)
058
index=string.indexOf(temp);
094
}else{
078
076
069
returns;
061
085
060
073
080
s=decimalFormat.format(obj);
}
081
matcher=pattern.matcher(string);
091
054
052
Patternpattern=Patternpile(regex);
093
if(!Pattern.matches(regexCheck,string))
082
}
publicstaticStringcomputeString(Stringstring){