When I recently posted some of my Turbo Pascal Stuff, I found an incomplete program that was supposed to do this. I was active on BBSes and, though I don’t recall the reason, I wanted a way to determine the possible words spelled by the BBS phone numbers (and/or how to determine what phone numbers correspond to words/phrases). I never got around to finishing the second part (numbers to letters) in Turbo Pascal, though.
I decided to create this functionality in R for three reasons:
For purposes of this package, the mapping of numbers to letters on a telephone’s keypad are as follows:
qz
is omitted
(or has a value other than 0):
qz
= 0:
phonenumber
is available on CRAN and
can be installed accordingly:install.packages("phonenumber")
library(phonenumber)
phonenumber
from GitHub using the
devtools
package:install.packages("devtools")
library(devtools)
install_github("scumdogsteev/phonenumber")
library(phonenumber)
The package consists of two functions:
letterToNumber
- converts letters in a string to
numbersnumberToLetter
- converts numbers in a string to
lettersBoth functions convert non-alphanumeric characters to dash (-) and
perform no conversion on their respective base character type (i.e.,
letterToNumber
leaves letters as is and
numberToLetter
leaves numbers as is).
letterToNumber
converts a string
containing letters into the corresponding numbers on a telephone’s
keypad. For example, if the user wants to know what telephone number
corresponds to “Texas:”
<- "Texas"
string letterToNumber(string)
#> [1] "83927"
numberToLetter
converts a string
containing numbers into the corresponding letters on a telephone’s
keypad. For example, if the user wants to know what possible character
strings could be spelled by a sequence of numbers (e.g., 22):
<- "22"
string numberToLetter(string)
#> [1] "AA" "AB" "AC" "BA" "BB" "BC" "CA" "CB" "CC"