On Thu, Aug 13, 2009 at 16:58, <andy_b...@wiwb.uscourts.gov> wrote: > Seems like this could be fun/golf > > ----- Forwarded by Andy Bach/WIWB/07/USCOURTS on 08/13/2009 11:57 AM ----- > > > I am using Active Perl 5.8.8. and Perl Dev Kit 7.0. > > I'm writing some code that standardizes the format of phone numbers in a > database because users have entered them in every way imaginable. > > Anyway, some of the phone numbers look like this: > > 800-69-VORTEX > > ...where the user has entered alpha characters instead of numbers. My > first thought was to use a hash to do the translation, like this: > > %alpha2num = > ( > 'A' => '2', > 'B' => '2', > 'C' => '2', > 'D' => '3', > . > . > . > > ...but since the rest of the routine uses only regular expressions, I > thought that it would be nice if this type of translation could be > accomplished with a regex.
perl -le'y!SVYZ!789!,s!([A-X])!int ord($1)%59/3!ge,print for join"","A".."Z"' -- lev