@@ -363,6 +363,7 @@ MathParser.exprToPostfix = function (expr, mathFunctions) {
363
363
}
364
364
expr = expr1s [ 0 ] . s ;
365
365
366
+ console . log ( expr ) ;
366
367
// multiplication sign
367
368
var expr1 = "" ;
368
369
for ( var i = 0 ; i < expr . length ; ) {
@@ -375,23 +376,25 @@ MathParser.exprToPostfix = function (expr, mathFunctions) {
375
376
for ( var j = 0 ; j < v . length ; ) {
376
377
if ( expr1 . length > 0 ) {
377
378
var expr1back = expr1 [ expr1 . length - 1 ] ;
379
+ console . log ( v , j , expr1 , expr1back , has_ ) ;
378
380
if ( ( / \) / . test ( expr1back ) && (
379
381
/ [ A - Z a - z Α - Ω α - ω _ \d \( ] / . test ( v [ j ] ) ||
380
382
( v [ j ] == "." && j + 1 < v . length && / \d / . test ( v [ j + 1 ] ) )
381
383
) ) ||
382
384
( j != 0 && / [ A - Z a - z Α - Ω α - ω _ \d \. \) ] / . test ( v [ j - 1 ] )
383
385
&& / \( / . test ( v [ j ] ) ) )
384
- expr1 += "*" ;
385
- else if ( ! has_ && (
386
+ expr1 += "*" , has_ = false ;
387
+ else if ( ( ! has_ && (
386
388
/ [ A - Z a - z Α - Ω α - ω ] / . test ( expr1back ) ||
387
- / \d \. ? $ / . test ( expr1 )
389
+ / \d \. $ / . test ( expr1 ) ) ||
390
+ / \d $ / . test ( expr1 )
388
391
) && ( / [ A - Z a - z Α - Ω α - ω ] / . test ( v [ j ] ) ||
389
392
( / ^ \. \d / . test ( v . slice ( j ) ) && ! / [ \d \. ] / . test ( expr1back ) ) )
390
393
&& v [ j ] != "_" )
391
- expr1 += "*" ;
394
+ expr1 += "*" , has_ = false ;
392
395
else if ( ! has_ && / [ A - Z a - z Α - Ω α - ω ] / . test ( expr1back )
393
396
&& / \d / . test ( v [ j ] ) )
394
- expr1 += "_" ;
397
+ expr1 += "_" , has_ = true ;
395
398
}
396
399
var next_lp = v . substring ( j , v . length ) . search ( / \( / ) ;
397
400
if ( next_lp != - 1 ) {
@@ -417,6 +420,7 @@ MathParser.exprToPostfix = function (expr, mathFunctions) {
417
420
}
418
421
}
419
422
expr = expr1 ;
423
+ console . log ( expr ) ;
420
424
421
425
// unwanted plus sign
422
426
expr = expr . replace ( / \( \+ / g, "(" ) ;
0 commit comments