本文实例为大家分享了python正则提取电话的具体代码,供大家参考,具体内容如下

主要用到正则

import re
import xlrd

def is_number(s):#是否数字
    try:
      x = int(s)#如果可以取整,说明是数字。
      return(True)
    except Exception as e:
      return False

data=xlrd.open_workbook(r'C:\Users\123456\Desktop\手机号/号主.xlsx','utf-8')
table = data.sheet_by_name('Sheet1')
cols = list(table.col_values(0))

f=open(r'C:\Users\123456\Desktop\手机号/号主.txt','w')
for i in range(1,100000):
  print('cols[i]',cols[i],type(cols[i]))
  if is_number(cols[i]):
    item=str(int(cols[i]))#xlrd包的结果可能会有小数点,因此是数字的先int一下
  else:item=str(cols[i])
  result = re.findall("(86)?(1[34578]\\d{9})", item)#手机号正则匹配
  if result != []:
    f.write(result[0][1] + '\n')
    print(result[0][1])

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

02-08 19:52