Shell - 有效的电话号码

题目:

给定一个文本文件file.txt, 每一行是一个电话号码.有效的格式是:(xxx) xxx-xxxx 或 xxx-xxx-xxxx。(x 表示一个数字).

要求, 写一条bash脚本输出所有有效的电话号码.

例: file.txt内容如下:

987-123-4567
123 456 7890
(123) 456-7890

期望的结果为:

987-123-4567
(123) 456-7890

解题思路:

grep -P '^(\d{3}-|\(\d{3}\) )\d{3}-\d{4}$' file.txt
sed -n -r '/^([0-9]{3}-|\([0-9]{3}\) )[0-9]{3}-[0-9]{4}$/p' file.txt
awk '/^([0-9]{3}-|\([0-9]{3}\) )[0-9]{3}-([0-9]{4})$/' file.txt

猜你喜欢

转载自blog.csdn.net/aqudgv83/article/details/89762475