This is feeble, but I've run out of time
#!perl -p
$t='-?';s#\s##g;{if(s#^$t\d+##){$\.="$& "}elsif(s#^\(##){$n=$O.=$&}elsif(s#^\)##){$\.="$& "while$O=~s#[^(]$##;$O=~s#\($##}elsif(s#^[+-]##){$o=$&;$\.="$& "while$O=~s#[-+/*]$##;$n=$O.=$o}elsif(s#^[/*]##){$o=$&;$\.="$& "while$O=~s#[/*]$##;$n=$O.=$o}else{last}($t,$n)=$n&&'-?';redo}$\.="$o "while$o=chop$O;$\=~s/ $/
/
|
Even after golfing, this is still going to be too big
#!perl -p
$t='-?';
s#\s##g;
{
if(s#^$t\d+##){
$\.="$& "
}elsif(s#^\(##){
$n=$ops.=$&
}elsif(s#^\)##){
while($ops=~s#[^(]$##){
$\.="$& "
}
$ops=~s#\($##
}elsif(s#^[+-]##){
$op=$&;
while($ops=~s#[-+/*]$##){
$\.="$& ";
}
$n=$ops.=$op
}elsif(s#^[/*]##){
$op=$&;
while($ops=~s#[/*]$##){
$\.="$& ";
}
$n=$ops.=$op
}else{
last
}
($t,$n)=$n&&'-?';
redo
}
$\.="$o "while$o=chop$ops;
$\=~s/ $/
/
|
#!perl -p
$t=1;
while(1){
s#^\s+##;
if($t && s#^-\s*0*(\d+)##){
$\.= "-$1 ";
}elsif(s#^0*(\d+)##){
$\.= "$1 ";
}elsif(s#^\(##){
push @ops,'(';
$n=1;
}elsif(s#^\)##){
while(($op=pop @ops) ne '('){
$\.= "$op ";
}
}elsif(s#^([+-])##){
$op=$1;
while(@ops && $ops[-1]=~m#[+-/*]#){
$\.= pop(@ops)." ";
}
push @ops,$op;
$n=1;
}elsif(s#^([/*])##){
$op=$1;
while(@ops && $ops[-1]=~m#[/*]#){
$\.= pop(@ops)." ";
}
push @ops,$op;
$n=1;
}else{
last;
}
($t,$n)=$n
}
($\.=join' ',reverse @ops)=~s/ ?$/
/;
|