Je cherche un regex qui me validerais des entiers compris entre -50 et 100 (pas de signe +)

je pars que j'ai un signe - ou pas
^-{0,1}

ensuite le problème est que selon si il y a le signe ou non le pattern n est plus le meme
([0-4][0-9]|50)|([0-9]{2}|100)

mais comment selectionner l'un ou l autre selon le signe ?

Merci