Análise avançada de intervalos numéricos de string

Estou usando o Java para analisar entradas de strings pelo usuário, representando valores numéricos únicos ou intervalos. O usuário pode inserir a seguinte string:

10-19

E sua intenção é usar números inteiros de10-19 ->10,11,12...19

O usuário também pode especificar uma lista de números:

10,15,19

Ou uma combinação dos itens acima:

10-19,25,33

Existe um método conveniente, talvez baseado em expressões regulares, para executar essa análise? Ou devo dividir a string usandoString.split(), em seguida, manualmente iterar os sinais especiais (',' e '-' neste caso)?

questionAnswers(4)

yourAnswerToTheQuestion