Hola amils21, la expresión regular que tienes sólo sirve en caso de tener 2 números y un signo, en el caso de la raiz cuadrada sólo necesitas el número al cual le vas a sacar la raíz cuadrada. Número + Signo, podrías hacer algo así antes de empezar la primera condición de preg match:
Código PHP:
Ver originalif (preg_match('/([0-9]+)(raiz|bina|hexa)/', $calc, $match2)) {
switch ($match2[2]) {
case "raiz":
break;
}
return $calc;
}
De esta forma la calculadora espera un número y que se decida que operación hacer (raiz, bina o hexa).