Propose such a "simple" perl script.
Here are some cases it should know how to deal with:
Between numbers (note that slashdot eats some of these characters; the numbers below all have different dashes or related symbols between "555" and "1000"):
"Pages 555–1000 discuss this matter" (this should be an internumeral dash, which is typically an en dash, U+2013).
"Her phone number is 5551000" (this should be a figure dash, U+2012).
"There were actually a lot more of them than the estimated 555—1000, to be precise" (this should be an em dash, U+2014).
"The teacher asked me to solve 5551000. I told him negative 455 was the answer." (this should be a minus sign, U+2212)
Between letters/words you have a similar problem: even if you know it shouldn't be a minus sign (which symbolic algebra makes tough to know for sure, but suppose you could surmount that), you generally have no idea what kind of dash or hyphen it should be turned into.