Python 的re模块提供了re.sub用于替换字符串中的匹配项。

re.sub(pattern, repl, string, count=0, flags=0)

pattern : 正则中的模式字符串。
repl : 替换的字符串,也可为一个函数。
string : 要被查找替换的原始字符串。
count : 模式匹配后替换的最大次数,默认 0 表示替换所有的匹配。
flags : 编译时用的匹配模式,数字形式。
前三个为必选参数,后两个为可选参数。

#!/usr/bin/python3

import re

phone = "2004-959-559 # 这是一个电话号码" # 删除注释

num = re.sub(r'#.*$', "", phone)

print ("电话号码 : ", num) # 移除非数字的内容

num = re.sub(r'\D', "", phone)

print ("电话号码 : ", num)

结果为:

电话号码 : 2004-959-559
电话号码 : 2004959559

python3的检索和替换re.sub函数的更多相关文章

  1. 自学Python3.2-函数分类(内置函数)

    自学Python之路-Python基础+模块+面向对象自学Python之路-Python网络编程自学Python之路-Python并发编程+数据库+前端自学Python之路-django 自学Pyth ...

  2. Python3.x的BeautifulSoup解析html常用函数

    Python3.x的BeautifulSoup解析html常用函数 1,初始化: soup = BeautifulSoup(html) # html为html源代码字符串,type(html) == ...

  3. 动态替换Linux核心函数的原理和实现

    转载:https://www.ibm.com/developerworks/cn/linux/l-knldebug/ 动态替换Linux核心函数的原理和实现 在调试Linux核心模块时,有时需要能够实 ...

  4. Python3:numpy模块中的argsort()函数

    Python3:numpy模块中的argsort()函数   argsort函数是Numpy模块中的函数: >>> import numpy >>> help(nu ...

  5. 第九章 利用DOM脚本检索,替换,设置,追加样式信息

    我们浏览器里看到的网页是由以下三层信息构成的一个共同体: -结构层,由HTML或XHTML之类的标记语言负责去搭建文档的结构. -表示层,由CSS负责设置文档的呈现效果. -行为层,由JavaScri ...

  6. javascript replace正则替换时调用函数替换的使用

    以下函数将替换英文方式下的单引号和双引号,当然change函数编写决定了你要替换什么? String.prototype.repSpecChar=function()      {           ...

  7. 循序渐进Python3(三) -- 1 -- 内置函数

    对函数有了一定了解之后,我们来看看Python的内置函数.下图是Python所有的内置函数,共68个.

  8. Python3简单的输入输出及内置函数查看

    工作之余和女朋友一起学Python3,代码都是她敲的,有点辣眼睛,仅做参考. 1.题目:输入"姓名",输出"你好,姓名" 有关安装和打开Python shell ...

  9. python3 第二十六章 - 内置函数之Number相关

    数学函数 函数 返回值 ( 描述 ) 实例 abs(x) 返回数字的绝对值,如abs(-10) 返回 10 print(abs(-10)) =======输出:====== 10 ceil(x) 返回 ...

  10. python3 日志检索异常抛出异常 raise KeyError(key),KeyError: 'formatters'

    原因分析,python3启动时,检索的不是项目包下的目录文件,所以日志文件必须指明路径.我原来的日志方式是: import logging.config log_path = "mlpcap ...

随机推荐

  1. .NET中使用CommonOpenFileDialog【打开文件夹】

    install-package WindowsAPICodePack var folderDialog = new CommonOpenFileDialog() { Title = "xxx ...

  2. argparse基本功能极简介绍

    argparse基本功能极简介绍 python脚本文件可以通过命令行的方式调用,在这种调用方法中,可以通过sys.argv来把命令行参数传入脚本文件,通过这种方式传入的参数是string,并且需要将该 ...

  3. CentOS、Ubuntu安装jdk11方法

    CentOS: sudo yum install java-11-openjdk -y Ubuntu sudo apt-get install openjdk-11-jre -y 检查版本: java ...

  4. 参加 Hugging Face 组织的 Gradio & MCP 智能体主题黑客松

    欢迎参加 Gradio & MCP 智能体主题黑客松! 准备好了吗?一场以智能体(Agent)和模型上下文协议(Model Context Protocol,简称 MCP)为核心的全球在线黑客 ...

  5. python解析xml字符串与xml转json

    一.python解析xml字符串from xml.dom.minidom import parseString xml_str=""" <root> < ...

  6. Spring Boot注解之@Async和自定义线程池

    前言   我们在学习线程池的时候,都知道线程池的核心线程数.最大线程数.线程工厂等核心参数非常重要,故熟记于心.但是有些工作五六年的攻城狮可能说不出来怎么初始化一个全局线程池,以在不同场景使用:所以, ...

  7. CSP2020复赛前小结

    今天用windows下的GUIDE打了一些板子,以下是我遇到的问题. 语言 未定义返回值类型的函数 inline isnum(char ch) { return ch>='0'&& ...

  8. 阿里也出手了!灵码AI IDE问世

    大家好,我是晓凡. 写在前面 各位程序员小伙伴们,是不是还在为写代码头秃?别担心,阿里云带着它的通义灵码 AI IDE 来拯救你啦! 相信不少小伙伴已经在VSCode.JetBrains IDE等主流 ...

  9. es聚合查询自动补0----java代码

    ES语句 GET /event_log_hulianwang_v3/_search { "size": 0, "query": { "bool&quo ...

  10. freeswitch使用hiredis的limit功能

    概述 freeswitch是一款简单好用的VOIP开源软交换平台. 之前写过一篇关于limit的文章"freeswwitch通过limit限制cps",主要是介绍了limit的ha ...