I'd just select the column with all the data in it and use "Tools -> Text to Columns" to delimit on dashes (enter it into the other field).
That will put the contract years into their own column (column B) and remove the dash. Do a formula in column C like =if(B1>0,B1-1,"") to subtract one from each player who had a multi-year contract. Make sure to copy and paste special -> values over the formula after doing that so you don't change things later.
So now you have most of the original data in column A, the original contract length in column B, and the new contract length in Column C. To put it back together in the old format, enter this formula into column D: =A1&"-"&C1. Copy that formula all the way down, copy, and paste special -> values over the final data. Voila!