|
|
@@ -1195,7 +1195,7 @@ let cbParser = {
|
|
|
},
|
|
|
//获取表达式中的中文式
|
|
|
getCN: function (expr) {
|
|
|
- let cnRex = /\d*[\u4e00-\u9fa5]{1,}\({0,}[\u4e00-\u9fa5]{0,}\d*%*、?[\u4e00-\u9fa5]{0,}\){0,}[\u4e00-\u9fa5]{0,}/g;
|
|
|
+ let cnRex = /\d*[\u4e00-\u9fa5]{1,}\({0,}[\u4e00-\u9fa5]{0,}\*?\d*%*、?[\u4e00-\u9fa5]{0,}\){0,}[\u4e00-\u9fa5]{0,}/g;
|
|
|
return _.filter(expr.match(cnRex), function (data) {
|
|
|
return data
|
|
|
});
|
|
|
@@ -1231,7 +1231,8 @@ let cbParser = {
|
|
|
},
|
|
|
//表达式中的百分数转换成小数
|
|
|
percentToNum: function (exp) {
|
|
|
- let rex = /[\+,\-,\*,\/]{1}\d+(\.\d+)?%[\u4e00-\u9fa5]{0}/g;
|
|
|
+ // let rex = /[\+,\-,\*,\/]{1}\d+(\.\d+)?%[\u4e00-\u9fa5]{0}\'{0}\){0}/g;
|
|
|
+ let rex = /[\+,\-,\*,\/]{1}\d+(\.\d+)?%(?![\u4e00-\u9fa5]|\))/g;
|
|
|
let percents = exp.match(rex);
|
|
|
let numRex = /\d+(\.\d+)?/g;
|
|
|
if (cbTools.isDef(percents)) {
|
|
|
@@ -1314,6 +1315,7 @@ let cbParser = {
|
|
|
exps[i].compileExp = '$CBC.base(\'' + exps[i].orgExp + '\')';
|
|
|
let regStr = exps[i].orgExp.replace(/\(/g, '\\\(');
|
|
|
regStr = regStr.replace(/\)/g, '\\\)');
|
|
|
+ regStr = regStr.replace(/\*/g, '\\\*');
|
|
|
v = v.replace(new RegExp(regStr, 'g'), exps[i].compileExp);
|
|
|
}
|
|
|
//去{}
|