【问题描述】
会员提供的信息中,有些手机号是会员随意输入的,因此要统计出有效的手机号。
如以下信息:18295089368
1895089368
185089368
182089368
17888888888
17884432254
17888132435
17812266688
18295089368
18235089368
13335508387
15575089368
【解决办法】
利用grep,sed与awk结合正则即可。下面分别说明这三个的用法。
1.greproot@network test$egrep '^1[3578][0-9]{9}' test.txt
18295089368
17888888888
18295089368
18235089368
13335508387
15575089368
root@network test$grep -oP '(?<='')(1[3578]{1}[0-9]{9})(?='')' test.txt
18295089368
17888888888
18295089368
18235089368
13335508387
15575089368
2.sedroot@network test$sed -n '/1[3578]\{1\}[0-9]\{9\}/p' test.txt
18295089368
17