电话号码正则提取

来源:互联网 发布:手机合成明星图片软件 编辑:程序博客网 时间:2024/05/07 17:45
可能多提
 
大陆手机:
1.11位
2.13、15、18开头
3.可能前面有86
 
a方案
egrep -o -e "1[3|5|8][0-9]{9}"
缺点:一长串数字里面包含以上规则的也会被提出, 例如 113512345678.jpg  会提出 13512345678
b方案,正则环视
(?<!x)y    y左侧不能有x
y(?!x)      y右侧不能有x
 
可怜 egrep不支持环视
c方案
egrep -v 排除 + 再选取
修改 egrep -v '([0-9]+1[3|5|8][0-9]{9})|(1[3|5|8][0-9]{9})[0-9]+)' | egrep -o -e "1[3|5|8][0-9]{9}"
 
 
大陆固定电话
区号-电话号码
1.区号开头为0 3位或者4位
2.第二位不为0
3.一共11位
4.区号和电话号码中间的符号-   - (中文- 英文- 各种空格)
 
只带-
egrep -o -e "(0[1-9]{2}-[0-9]{8})|(0[1-9]{3}-[0-9]{7})"
带-或者粘连
egrep -o -e "(0[1-9]{2}-?[0-9]{8})|(0[1-9]{3}-?[0-9]{7})"
 
400电话
原创粉丝点击