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的slice notation的特殊用法详解

python的slice notation的特殊用法详解

如下所示: python的slice notation的特殊用法。 a = [0,1,2,3,4,5,6,7,8,9] b = a[i:j] 表示复制a[i]到a[j-1],以生成新的...

pyqt 实现在Widgets中显示图片和文字的方法

pyqt 实现在Widgets中显示图片和文字的方法

思路非常简单:<p>创建window,设置窗口大小,创建label1,导入图片,创建label2,导入文字,show,结束!</p> import sys...

Python3中bytes类型转换为str类型

Python3中bytes类型转换为str类型

Python 3最重要的新特性之一是对字符串和二进制数据流做了明确的区分。文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示。Python 3不会以任意隐式的方式...

简单了解python单例模式的几种写法

方法一:使用装饰器 装饰器维护一个字典对象instances,缓存了所有单例类,只要单例不存在则创建,已经存在直接返回该实例对象。 def singleton(cls): inst...

Python 数据结构之旋转链表

题目描述:给定一个链表,旋转链表,使得每个节点向右移动k个位置,其中k是一个非负数 样例:给出链表1->2->3->4->5->null和k=2;返回4-...