/*利用表现形式的描述,转化数据的输出格式 
 * value: 需要转换表现形式的数据
 * des:   表现形式的描述,类似#,###.##$
 */
function formatFloat(value, des) {
var desCheck = eval("/(([^\d|#]*)#*([^\w|#|\\"+defaultInputDecimal+"]*)(#+)(\\"+defaultInputDecimal+"{0,1})(#*)([^\d|#]*))/g");
//判断并解析des,例如$#,###.###@@
if(desCheck.test(des)) {
var matchedDes=RegExp.$1; //匹配的描述字符串
var header=RegExp.$2; //字符头
var er=RegExp.$3; //千分符,例如233,334.98$
var multi=RegExp.$4;
var decimal = RegExp.$5; //小数分割符
var place=RegExp.$6; //小数位数
var footer=RegExp.$7; //字符尾
//alert("matchedDes: "+matchedDes+"\n header: "+header+"\n er: "+er+"\n multi: "+multi+"\n decimal: "+decimal+"\n place: "+place+"\n footer: "+footer);
  //use normal numberformat
var nF = new NumberFormat();
nF.setInputDecimal(defaultInputDecimal);
nF.setNumber(value);
nF.setPlaces(place.length);
if(er!=null && er!=""){
nF.setSeparators(true, er, decimal);
} else {
nF.setSeparators(false, er, decimal);
}
var nFvalue=nF.toFormatted();
return header+nFvalue+footer;
} else {
  alert("Cannot parse value! \nValue:"+value+"\nParser:"+des);
}
}