力扣解题-193有效电话号码

题目:

给定一个包含电话号码列表(一行一个电话号码)的文本文件 file.txt,写一个单行 bash 脚本输出所有有效的电话号码。

你可以假设一个有效的电话号码必须满足以下两种格式: (xxx) xxx-xxxx 或 xxx-xxx-xxxx。(x 表示一个数字)

你也可以假设每行前后没有多余的空格字符。

示例:

假设 file.txt 内容如下:

987-123-4567
123 456 7890
(123) 456-7890
你的脚本应当输出下列有效的电话号码:

987-123-4567
(123) 456-7890

题解:

思路:

  • 使用grep的正则表达式模式:-E
  • 使用^$,表示开头与末尾
  • 使用(),划分使用范围
  • 使用|,表示或操作
  • 使用\xxx,表示转义字符
  • 使用\s,表示空格;\s{m},表示m个空格
  • 使用[0-9]{m},表示m个数字

代码:

grep -E '^([0-9]{3}-|\([0-9]{3}\)\s)[0-9]{3}-[0-9]{4}$' file.txt 
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容