python正则实现提取电话功能

yipeiwu_com5年前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设计】。

相关文章

使用wxpython实现的一个简单图片浏览器实例

上次我爬了n多图片,但是浏览的时候有一个问题。 图片浏览器的浏览一般都是按名称排的,而我对图片的命名是按照数字递增的。比如3总是会排在10后面,也就无法快速地浏览图片了。 所以,出于方便...

python 用所有标点符号分隔句子的示例

问题 给出一段话,由短句组成,短句之间可能被任意标点符号隔开。想要提取所有的短句。 解决 使用 re.split 函数,用正则式匹配的方法,一次性分隔所有短句。 import re...

关于Python如何避免循环导入问题详解

前言 Python 中使用package时,出现循环导入问题十分常见,我们创建如下package来说明这个问题: pkg ├── __init__.py ├── module_a...

pymongo中聚合查询的使用方法

pymongo中聚合查询的使用方法

前言 在使用mongo数据库时,简单的查询基本上可以满足大多数的业务场景,但是试想一下,如果要统计某一荐在指定的数据中出现了多少次该怎么查询呢?笨的方法是使用find 将数据查询出来,再...

用Python实现数据的透视表的方法

在处理数据时,经常需要对数据分组计算均值或者计数,在Microsoft Excel中,可以通过透视表轻易实现简单的分组运算。而对于更加复杂的分组运算,Python中pandas包可以帮助...