randRangeNonZero( -10, 10 ) randRangeNonZero( -10, 10 )
1 SQUARE*A*B A*B SQUARE*(-A-B) -A-B

Factor the following expression:

plus(SQUARE + "x^2") + plus( LINEAR + "x" ) + CONSTANT

^\s*\(\s*[xX]\s*A < 0 ? "\\+" : "[-\u2212]"\s*abs( A )\s*\)\s*\(\s*[xX]\s*B < 0 ? "\\+" : "[-\u2212]"\s*abs( B )\s*\)\s*$
^\s*\(\s*[xX]\s*B < 0 ? "\\+" : "[-\u2212]"\s*abs( B )\s*\)\s*\(\s*[xX]\s*A < 0 ? "\\+" : "[-\u2212]"\s*abs( A )\s*\)\s*$
a factored expression, like (x+1)(x+2)

The factored expression is: (x A < 0 ? "+" : "" -A) (x B < 0 ? "+" : "" -B)