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