Python自动化办公之手机号提取

作者:Python 时间:2022-12-26 11:31:46 

关于手机号码的提取,其实真正有用的部分就是re模块提供的正则表达式。使用正则表达式就能轻松地匹配到手机号码,由于功能比较简单这次并没有采用UI界面的方式来实现该功能。

Python自动化办公之手机号提取

第一步:写一个控制台输入函数。

path = input('请输入需要提取手机号码的文件路径(.txt):\n')

第二步:读取包含手机号码的文本文件。

def read_text(path):
   '''
   读取文本文件
   :param path: 文本文件路径
   :return: 返回文本
   '''
   file = open(path,encoding="utf-8")
   text = file.read()
   file.close()
   return text

第三步:使用正则匹配文本中的手机号并返回。

import re  # 导入正则表达式处理模块

def get_phone(text):
   '''
   使用正则表达式提取文本中的手机号
   :param text: 原始文本
   :return: 手机号数组
   '''
   phones = re.findall(r'(13\d{9}|14[5|7]\d{8}|15\d{9}|166{\d{8}|17[3|6|7]{\d{8}|18\d{9})', text)
   return phones

第四步:执行功能函数。

text = read_text(path)  # 执行文本文件读取函数

result = get_phone(text)  # 执行文本正则匹配手机号函数

from pprint import pprint  # 导入pprint打印接口

pprint(result)

使用方法,启动.py文件之后输入包含手机号码的.txt文件路径就能完成手机号码的提取。

准备好包含手机号码的文本文件(.txt文件)。

我是公众号:[Python 集中营] 15934689023,其中包含手机号码。
我是公众号:[Python 集中营] 15934689024,其中包含手机号码。
我是公众号:[Python 集中营] 15934689025,其中包含手机号码。
我是公众号:[Python 集中营] 15934689026,其中包含手机号码。
我是公众号:[Python 集中营] 15934689027,其中包含手机号码。
我是公众号:[Python 集中营] 15934689028,其中包含手机号码。
我是公众号:[Python 集中营] 15934689029,其中包含手机号码。
我是公众号:[Python 集中营] 15934689030,其中包含手机号码。
我是公众号:[Python 集中营] 15934689031,其中包含手机号码。
我是公众号:[Python 集中营] 15934689032,其中包含手机号码。
我是公众号:[Python 集中营] 15934689033,其中包含手机号码。
我是公众号:[Python 集中营] 15934689034,其中包含手机号码。
我是公众号:[Python 集中营] 15934689035,其中包含手机号码。
我是公众号:[Python 集中营] 15934689036,其中包含手机号码。
我是公众号:[Python 集中营] 15934689037,其中包含手机号码。
我是公众号:[Python 集中营] 15934689038,其中包含手机号码。
我是公众号:[Python 集中营] 15934689039,其中包含手机号码。
我是公众号:[Python 集中营] 15934689040,其中包含手机号码。

返回结果是一个只有手机号码的数组文件。

['15934689023',
 '15934689024',
 '15934689025',
 '15934689026',
 '15934689027',
 '15934689028',
 '15934689029',
 '15934689030',
 '15934689031',
 '15934689032',
 '15934689033',
 '15934689034',
 '15934689035',
 '15934689036',
 '15934689037',
 '15934689038',
 '15934689039',
 '15934689040',
 '15934689041',
 '15934689042',
 '15934689043',
 '15934689044',
 '15934689045',
 '15934689046',
 '15934689047',
 '15934689048',
 '15934689049',
 '15934689050',
 '15934689051',
 '15934689052',
 '15934689053']

来源:https://www.cnblogs.com/lwsbc/p/16357020.html

标签:Python,手机号,提取
0
投稿

猜你喜欢

  • 对python csv模块配置分隔符和引用符详解

    2023-04-14 13:52:20
  • 浅析PHP中的字符串编码转换(自动识别原编码)

    2023-09-08 08:04:44
  • python中logging模块的一些简单用法的使用

    2023-08-12 09:28:17
  • Python实现的服务器示例小结【单进程、多进程、多线程、非阻塞式】

    2023-02-24 00:19:25
  • 使用XML配置c3p0数据库连接池

    2024-01-22 11:15:02
  • AI:如何训练机器学习的模型

    2023-01-16 13:18:49
  • Python装饰器(decorator)定义与用法详解

    2022-07-21 03:11:25
  • MySQL连接及基本信息查看命令汇总

    2024-01-24 10:47:40
  • mysqld_safe启动脚本源码阅读、分析

    2024-01-22 14:33:21
  • Javascript 利用 DOM 特性的两个小技巧

    2009-02-28 14:07:00
  • MySQL视图的概念和操作函数详解

    2024-01-24 15:27:22
  • 跟老齐学Python之总结参数的传递

    2021-12-16 18:17:24
  • Python编程通过懒属性提升性能

    2022-04-01 09:48:43
  • 快速解决SQL server 2005孤立用户问题

    2009-01-04 14:02:00
  • Java使用正则表达式(regex)匹配中文实例代码

    2023-06-17 07:59:46
  • JavaScript创始人Brendan Eich访谈录

    2008-09-16 12:01:00
  • 数组保存为txt, npy, csv 文件, 数组遍历enumerate的方法

    2021-05-05 05:36:39
  • python subprocess pipe 实时输出日志的操作

    2022-10-07 00:39:51
  • python音频处理用到的操作的示例代码

    2021-05-11 22:05:19
  • python range实例用法分享

    2021-09-28 02:54:46
  • asp之家 网络编程 m.aspxhome.com