I'm not really a
sed coder but I think it is the same as
perl in this situation with the excpetion that
sed does inplace editing by default (I could be wrong). The problem is you have not described your input besides saying it has those sequence of ranges you posted.
Code:
sed -e 's/([0-9]+)(-)([0-9]+)/{\1..\2}/g' file
Anyway, see if it works, backup your file first. If I am totally wrong someone will correct me.