1. 程式人生 > >Leetcode 193.Valid Phone Numbers

Leetcode 193.Valid Phone Numbers

ID ace 精確匹配 esc stack pre .com 區別 numbers

https://leetcode.com/problems/valid-phone-numbers/description/
Shell腳本題目:給file.txt ,輸出復合格式的電話號碼。思路是使用正則,但是有幾個坑。


  • 註意grep -E 與grep -P 的區別 https://www.jianshu.com/p/e1acfb7989b2
    -E 其實是擴展支持| 與& 這種方式,-P才是Perl正則

  • 註意正則使用^ 和 $ 包圍精確匹配
  • 剛開始使用cat 和read 讀取文件,發現要麽多個空格省略成一個,要麽修改IFS為‘‘ 但是又處理不了換行。https://stackoverflow.com/questions/7314044/use-bash-to-read-line-by-line-and-keep-space
    實際上grep 直接讀取文件就好了。

grep -P "^(\d{3}-|\(\d{3}\) )\d{3}-\d{4}$" file.txt

Leetcode 193.Valid Phone Numbers