Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses
 
PerlMonks  

Re: (Golf) mobile phone numbers - words

by jmcnamara (Monsignor)
on May 29, 2001 at 21:05 UTC ( [id://84001]=note: print w/replies, xml ) Need Help??


in reply to (Golf) mobile phone numbers -> words


This is a program rather than a sub. It is 160 chars without unnecessary whitespace. I don't know what you are supposed to do with 1 and 0. Get another phone number I guess. ;-)
#!/usr/bin/perl -snl BEGIN{ for ($N) { s/[10]//g; s/2/[abc]/g; s/3/[def]/g; s/4/[ghi]/g; s/5/[jkl]/g; s/6/[mno]/g; s/7/[pqrs]/g; s/8/[tuv]/g; s/9/[wxyz]/g } } /^$N$/oi&&print
You can run it like this:     phonenum -N=7375 /usr/dict/words
I tried this with most of my friends' and family's phone numbers and none of them generated any words. :-(

John.
--

Replies are listed 'Best First'.
Re: Re: (Golf) mobile phone numbers - words
by MeowChow (Vicar) on May 29, 2001 at 22:00 UTC
    I really like this "inverted" regex method. As a sub, it can be brought down to 105 characters:
    sub n{ $n=shift;@l=('','',qw([abc] [def] [ghi] [jkl] [mno] [pqrs] [tuv] [wxyz +]));$n=~s/./$l[$&]/ge;grep/^$n$/,@_ }
       MeowChow                                   
                   s aamecha.s a..a\u$&owag.print

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://84001]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others sharing their wisdom with the Monastery: (8)
As of 2024-04-18 11:03 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found