There are some possibly undesirable conversions with ASCII//TRANSLIT//IGNORE or your users may require some custom stuff.
You might want to run a substitution up front for certain things, such as when you want 3 letter ISO codes to replace currency symbols. £ transliterates to "lb", for example, which is incorrect since it's a currency symbol, not a weight symbol (#).
ASCII//TRANSLIT//IGNORE does a great job within the realm of possibility :-)
When it doesn't do something you want it to, you can set up a CSV with one replacement per line and run a function like:
function stripByMap($inputString, $mapFile)
$csv = file($mapFile);
foreach($csv as $line)
$arrLine = explode(',', trim($line));
$inputString = str_replace($arrLine,$arrLine,$inputString);
or you can write some regexes. Transliterating using ASCII//TRANSLIT//IGNORE works so well that your map probably won't be very long...