in reply to Substitution with multiple options for capture and replace.

Addressing your first question, I can not think of a way to perform the multiple replacements you require using a single substitution operator without using a hash. However, Lingua::EN::Numericalize seems to be relevant to your question.
  • Comment on Re: Substitution with multiple options for capture and replace.