base de datos – problema con expresiones regulares, validar rango en php

con una expresion regular que diseñe, la idea es que solo me deje pasar un rango numerico, como el siguiente:
introducir la descripción de la imagen aquí

el codigo que estoy usando es el siguiente

if( empty($datos(RANGO_CUPOS)) ){
        $errorMensaje($key+2)() = "El campo ".$arrayEncabezado(RANGO_CUPOS)." no puede estar vacío";
        $has_error = true;
    }elseif( !preg_match("/^(0-9){1,2}-((0-9){1,2})?+$/", trim($datos(RANGO_CUPOS))) ){
        $errorMensaje($key+2)() = "El campo ".$arrayEncabezado(RANGO_CUPOS)." debe tener la estructura numero - numero";
        $has_error = true;
    } 

mi problema es que me esta dejando pasar cosas como may-15, en la ultima parte no se como hacer la expresion regular de 26-. de antemano gracias por su ayuda.