python正则实现提取电话功能

yipeiwu_com7年前Python基础

本文实例为大家分享了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])

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python numpy元素的区间查找方法

找了半天,以为numpy的where函数像matlab 的find函数一样好用,能够返回一个区间内的元素索引位置。结果没有。。(也可能是我没找到) 故自己写一个函数,找多维数组下的,在某...

Python实现矩阵加法和乘法的方法分析

本文实例讲述了Python实现矩阵加法和乘法的方法。分享给大家供大家参考,具体如下: 本来以为python的矩阵用list表示出来应该很简单可以搞。。其实发现有大学问。 这里贴出我写的特...

win10环境下python3.5安装步骤图文教程

win10环境下python3.5安装步骤图文教程

点我去Python官网下载 往下翻几页就能看到各种版本的Python,当前最新的是Python3.6,也没多大区别,我选择的是3.5.2 64位的,点击download 根据自己的电...

详解用python计算阶乘的几种方法

第一种:利用functools 工具处理 import functools result = (lambda k: functools.reduce(int.__mul__, ran...

实例讲解Python中整数的最大值输出

在Python中可以存储很大的值,如下面的Python示例程序: x = 10000000000000000000000000000000000000000000; x = x...