作用:替换字符串中的某字符串

本文以 ‘×××’掩盖手机号部分数字 为例,介绍re模块的sub的用法: 返回值 -> 字符串

复杂匹配 = re.compile(正则表达式): 将正则表达式实例化

+

re.sub(要匹配的字符串): 从字符串开头 开始匹配,寻找完整个字符串后,将结果以 字符串 返回

简单匹配 = re.sub(正则表达式,  要替换成为这个样子的字符串, 要匹配的原字符串): 从字符串开头 开始匹配,寻找完整个字符串后,将结果以 字符串 返回

懒癌,配上模块函数解释好消化re.sub(pattern, repl, string, count, flags),如果匹配成功,则返回一个repl过的 字符串,否则返回原string;

第一个参数:正则表达式

第二个参数:要替换成为这个样子的字符串;

第三个参数:要匹配查找的原始字符串;

第四个参数:可选参数,表示模式匹配后替换的最大次数,默认值为0,表示替换所有的匹配;

第五个参数:可选参数,标志位,用于控制正则表达式的匹配方式,如:是否区分大小写,多行匹配等等;

需要特别注意的是,这个方法并不是完全匹配。它仅仅决定在字符串开始的位置是否匹配。所以当pattern结束时若还有剩余字符,仍然视为成功。想要完全匹配,可以在表达式末尾加上边界匹配符'$'

例如: re.sub(‘z’, ‘1’, ‘p.python.p’)返回值为'p.python.p';  #失败返回原string

re.sub(‘p’, ‘1’, ‘p.python.p’)返回值为'1.1ython.1'   #成功返回新字符串

方法一:

对象名1 = re.sub(正则表达式,  要替换成为这个样子的字符串, 要匹配的原字符串)#!/usr/bin/python

# -*- coding: utf-8 -*-

import os,re;

pattern = r'1[^1269]\d{9}'

string = "win the gift number is 020-2123456 the 15075940766q"

tel = re.split(' ', string)

print("1:截取的手机号是:"+tel[7])

print("2:手机号的类型是:", type(tel[7]))

i = 0

str = ''

for place in tel[7]:

if i

str += place;

if ((i =3)):

str = str + '*';

i += 1

print("3:隐藏的手机号尾码是:"+str)

print("4:隐藏的手机号尾码类型是:", type(str))

result1 = re.sub(pattern, str, string)

#for i in result1:

#    print(i)

print("5:最终替换的结果是:", result1)

print("6:最终替换的结果类型是:", type(result1))

运行结果:1:截取的手机号是:15075940766q

2:手机号的类型是:

3:隐藏的手机号尾码是:150********

4:隐藏的手机号尾码类型是:

5:最终替换的结果是: win the gift number is 020-2123456 the 150********q

6:最终替换的结果类型是:

python 正则表达式 sub_Python 正则表达式:sub相关推荐

  1. python 正则表达式 sub_python 正则表达式 re.sub re.subn

    python正则表达式模块简介 Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式.Python 1.5之前版本则是通过 regex 模块提供 Emacs 风格的模式 ...

  2. python正则表达式_Python正则表达式简记和re库!

    正则表达式是定义搜索模式的字符序列.通常这种模式被字符串搜索算法用于字符串上的"查找"或"查找和替换"操作,或者用于输入验证. 1. 正则表达式的语法 . 表示 ...

  3. python中的正则表达式语法_Python基础教程之正则表达式基本语法以及re模块

    什么是正则: 正则表达式是可以匹配文本片段的模式. 正则表达式'Python'可以匹配'python' 正则是个很牛逼的东西,python中当然也不会缺少. 所以今天的Python就跟大家一起讨论一下 ...

  4. Python中re(正则表达式)模块函数学习

    2019独角兽企业重金招聘Python工程师标准>>> Python正则表达式指南 今天学习了Python中有关正则表达式的知识.关于正则表达式的语法,不作过多解释,网上有许多学习的 ...

  5. Python字符串和正则表达式中的反斜杠(‘\‘)问题

    在Python普通字符串中 在Python中,我们用''来转义某些普通字符,使其成为特殊字符,比如 In [1]: print('abc\ndef') # '\n'具有换行的作用 abc defgIn ...

  6. Python高级语法-正则表达式

    正则表达式在字符串匹配中起到巨大的作用. 简介 几个数据提取工具对比: re(正则表达式):速度很快,难度高(语法难记),不需要安装(python标准库内置) bs(BeautifulSoup):速度 ...

  7. python里面的正则表达式_Python中的正则表达式

    以下内容转自:http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html 1. 正则表达式基础 1.1. 简单介绍 正则表达式并不是Pyth ...

  8. [Python]网络爬虫(七):Python中的正则表达式教程(转)

    接下来准备用糗百做一个爬虫的小例子. 但是在这之前,先详细的整理一下Python中的正则表达式的相关内容. 正则表达式在Python爬虫中的作用就像是老师点名时用的花名册一样,是必不可少的神兵利器. ...

  9. [Python]网络爬虫(七):Python中的正则表达式教程

    接下来准备用糗百做一个爬虫的小例子. 但是在这之前,先详细的整理一下Python中的正则表达式的相关内容. 正则表达式在Python爬虫中的作用就像是老师点名时用的花名册一样,是必不可少的神兵利器. ...

  10. python中的正则表达式是干嘛的_python中正则表达式总结

    re.match():从字符串的开始进行匹配 re.search():扫描整个字符串返回第一个匹配 re.findAll():返回所有匹配的字符串 Pattern 对象不能实例化,只能通过compil ...

最新文章

  1. 计算机显示器黑屏首先检查,蓝快干货 | 电脑黑屏的解决办法
  2. Codeforces ECR50 div2题解
  3. 独家 | 一文带你上手卷积神经网络实战(附数据集学习资料)
  4. 架构宣言: MDA 实战
  5. 类中的静态成员函数访问非静态成员变量
  6. Github远程仓库管理
  7. centos6.9系列LNMP环境的安装
  8. 数学思想 —— 推广和泛化
  9. xib加载的两种方式
  10. Miktex + WinEdit 实现LaTeX写论文
  11. Setting up NUnit for C# Unit Testing with Visual Studio C# Express 2008
  12. 7-12 方阵循环右移 (20 分)
  13. Vue学习笔记(五)
  14. 产业链图谱:2021年中国显示器产业链图谱|产业链全景图
  15. linux启动exe程序命令行参数,Linux可执行文件的启动及命令行参数和环境变量的传递...
  16. 集成灶怎么选品牌(拒绝陷阱避坑指南)
  17. 10GBASE-T SFP+电口模块知识百科
  18. 别想盗我视频之——blob加密+mediaSource防止用户下载视频
  19. Hive常用函数介绍(窗口函数)
  20. 测绘资质通用标准审查细则

热门文章

  1. 京豆薅羊毛新姿势-docker方式
  2. linux系统发生假死状态处理办法
  3. 由双系统变单系统——如何删除另一个操作系统
  4. 为什么不发展三进制计算机,三进制计算机
  5. OpenCV——图像细化算法
  6. 年末总结(androidbug)
  7. python爬虫豆瓣电影按电影类型_Python爬虫入门 | 7 分类爬取豆瓣电影,解决动态加载问题...
  8. 万字拆解伊利:84天从0到千万GMV,传统巨头在抖音电商的“快与慢”
  9. ArcGIS提取面数据中心线
  10. 7、HTML超链接标签,a标签,锚链接,QQ推广