[LeetCode] [Shell] Valid phone numbers

[Description]
Given a text file file.txt that contains list of phone numbers (one per line), write a one liner bash script to print all valid phone numbers.

You may assume that a valid phone number must appear in one of the following two formats: (xxx) xxx-xxxx or xxx-xxx-xxxx. (x means a digit)

You may also assume each line in the text file must not contain leading or trailing white spaces.

[Solution]

egrep ‘^([0-9]{3}-|([0-9]{3}) )[0-9]{3}-[0-9]{4}$’ file.txt

另外awk, sed 也可以解决这类问题。
grep只支持基础正则表达式,而egrep支持拓展的正则表达式(| 就是一个拓展的正则表达式)

你可能感兴趣的:(leetcode编程)