Regex + Condição de Pagamento

Boa noite pessoal

estou tentando desenvolver um Regex com a seguinte estrutura para as condições

[list]não pode ser nula nem vazia[/list]
[list]tem que ter somente números em cada membro que pode ser separado por \ / - . ,[/list]
[list]existe a possibilidade de ter membros onde fique assim 3*30[/list]

eu montei a seguinte Regex:

public void setValue(String value) {
  Pattern p = Pattern.compile("^([\\d+](\\*\\d+)*([\\-\\\\./\\,]{0,1}))+$");
  if (!p.matcher(value).find()) {
    throw new IllegalArgumentException("Condição de pagamento inválida");
  }
  condicaoPgto = value;
}

o problema que eu testei com algumas condições e deveria ter ficado assim:
[list]30/60-90/120.150,10[/list]Essa é válida
[list]30/60-90\120.150//[/list]Essa é inválida por causa da dupla barra
[list]0[/list]Essa é válida
[list]310[/list]Essa é válida
[list]3
101[/list]Essa deveria ser inválida pois tem 2 grupos de * número (essa que eu não estou conseguindo fazer funcionar)
[list]3
[/list]Inválido pois falta um membro
[list]5**5[/list]Inválido pois tem dois *

Bom desde já agradeço