Consider the following file called phone.txt: containing some DDD area phone numbers, except that the area code (i.e., the first three digits) are backwards and do not include the parentheses around the area code as follows:
279 680-0035 412 328-2197 964 432-8492 718 780-4972
Write a one-line sed command that reverses the order of the three digits in the area code and adds the needed parentheses around the area code so that after running the appropriate sed command, the following would be output to the terminal:
(972) 680-0035 (214) 328-2197 (469) 432-8492 (817) 780-4972
For reversing the order, I will use substring and obtain all the first three digits as a substring so that I can refer them later as \1
, \2
and \3
.
$sed 's/\([0-9]\)\([0-9]\)\([0-9]\) \([0-9][0-9][0-9]\)-\([0-9][0-9][0-9][0-9]\)/(\3\2\1) \4-\5/' phone.txt