Regexes são gananciosos. Eles vão combinar a primeira coisa que puderem. (|a|b) sempre corresponderá a uma string nula.
Da mesma forma, (\d{7}|\d{7}-\d{7}) sempre corresponderá apenas a \d{7} (ou não corresponderá a todos). Nunca irá para a segunda opção.
O que você deseja é (\d{7}-\d{7}|\d{7}) . Mas por que ser tão detalhado?
\d{7}(-\d{7})? funcionará bem.
Então você tem:
Range_\d{7}(-\d{7})?