Determine the type of an input
JavaScript (ES6), 99

x=&gt;(z=x.match(/^([+-])?\d+(\.\d+)?$/))?'SU'[+!z[1]]+'DI'[+!z[2]]:x[1]?'ST':parseInt(x,36)?'LE':'SY'


Test



f=x=&gt;(z=x.match(/^([+-])?\d+(\.\d+)?$/))?'SU'[+!z[1]]+'DI'[+!z[2]]:x[1]?'ST':parseInt(x,36)?'LE':'SY'

console.log=x=&gt;O.textContent+=x+'\n'

;console.log(['0','01','34','12938219383278319086135768712319838871631827319218923'].map(x=&gt;f(x)+' '+x).join`\n`)
;console.log(['-0','+01','+1','-123','+123'].map(x=&gt;f(x)+' '+x).join`\n`)
;console.log(['0.0','3.1415','2.718281828459045235360287471352662497757'].map(x=&gt;f(x)+' '+x).join`\n`)
;console.log(['+0.0','-3.1415','+2.718281828459045235360287471352662497757'].map(x=&gt;f(x)+' '+x).join`\n`)
;console.log([...'akLZ'].map(x=&gt;f(x)+' '+x).join`\n`)
;console.log([...'@"+-'].map(x=&gt;f(x)+' '+x).join`\n`)
;console.log(['Hello, World!','f2!"','+23df','1234A',`'"!`,'.012','1.','UI','+-1','5+3'].map(x=&gt;f(x)+' '+x).join`\n`)
&lt;pre id=O&gt;&lt;/pre&gt;