Consider the input in the next cell. The 2-D representation of this cell is stored as
SqrtBox[
RowBox[{
FractionBox["35", "100"], "+", "1"}]]
Before Mathematica can evaluate this input it converts it to the expression
Power[Plus[Times[35,Power[100,-1]],1],Rational[1,2]]
However, before the boxes are converted to this expression Mathematica checks to see if the boxes should be changed using $PreRead.
35
Sqrt[1 + ---]
100
Clear[$Pre, $PreRead, MyDivide] ;
$PreRead = (# /. FractionBox[num_, den_] :>
RowBox[{MyDivide, [, RowBox[{num, ,, den}], ]}]) & ;
35
Sqrt[1 + ---]
100
Sqrt[1 + MyDivide[35, 100]]
$PreRead =.