主页 > 知识库 > Python中sub()的用法说明

Python中sub()的用法说明

热门标签:广东旅游地图标注 苏州人工外呼系统软件 电话外呼系统招商代理 打印谷歌地图标注 电话机器人贷款诈骗 佛山通用400电话申请 京华图书馆地图标注 淮安呼叫中心外呼系统如何 看懂地图标注方法

Python来进行查询和替换一个文本字符串?

可以使用sub()方法来进行查询和替换,sub方法的格式为:

sub(replacement, string[, count=0])

replacement是被替换成的文本

string是需要被替换的文本

count是一个可选参数,指最大被替换的数量

例子:

import re
p = re.compile('(blue|white|red)')
print(p.sub('colour','blue socks and red shoes'))
print(p.sub('colour','blue socks and red shoes', count=1))

输出:

colour socks and colour shoes
colour socks and red shoes

subn()方法执行的效果跟sub()一样,不过它会返回一个二维数组,包括替换后的新的字符串和总共替换的数量

例如:

import re
p = re.compile('(blue|white|red)')
print(p.subn('colour','blue socks and red shoes'))
print(p.subn('colour','blue socks and red shoes', count=1))

输出

('colour socks and colour shoes', 2)
('colour socks and red shoes', 1)

补充:Python中正则表达式sub函数用法总结

正则表达式一个比较常见的用途是找到所有模式匹配的字符串并用不同的字符串来替换它们。sub方法提供一个替换值,可以是字符串或函数,和一个要被处理的字符串。

1、这里的sub方法,是被编译成‘RegexObject'实例后的实例的方法

Sub(replacement,string[,count =0 ])

1)返回的字符串是在字符串中用RE最左边不重复的匹配来替换。如果模式没有被发现,字符将没有被改变的返回。

2)可选参数count是模式匹配后替换的最大次数;count必须是非负整数。缺省值是0表示替换所有的匹配。

例子:

2、模块级函数:sub方法

注:这些函数(包括sub函数)使用RE字符串作为第一个参数,而后面的参数与相应的“RegexObject”方法的参数相同,返回要么是None,要么是一个‘MatchObject'实例。

(实际sub返回的是字符串,,两者说法不一致,以实际为准)

Re.sub的作用在于:使用给定的替换内容将匹配模式的子字符串(最左端并且非重叠的子字符串)替换掉

3、作为替换的组号

在2的例子中,只是把一个字符串用其他的内容替换掉了。用replace这个字符串方法能轻松达到同样的效果。而正则表达式允许以更灵活的方式进行搜索,同时它们也允许进行功能更强大的替换。

见证re.sub强大功能的最简单方式就是在替换字符串中使用组号。在替换内容中以‘\\n'型式出现的任何转义序列都会被模式中与组n匹配的字符串替换掉。

例如,假设要把‘*something*'用‘em>someting/em>'替换掉,前者是在普通文本文档(比如Email)中进行强调的常用方法,而后者则是相应的HTML代码(用于网页)

这里把所有的* *含的字符串都替换掉了。刚开始我以为只替换*world*。记一笔。

4、作为替换的函数

Re.sub函数可以将一个函数作为第二个参数(替换式)。函数会被匹配的对象调用,并且它的返回值会被插入到文本中。(但从例子2看来,是函数的唯一参数是被匹配的对象)

例子1:

test.txt内容:

结果:

例子2

(该例子在《python基础教程》20章)

Sub方法不直接调用callback,而是返回一个新的函数,这个函数会被当成re.sub的替换函数来使用(这就是采用一个匹配的对象作为唯一参数的原因)

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

您可能感兴趣的文章:
  • Python plt 利用subplot 实现在一张画布同时画多张图
  • 使用sublime text3搭建Python编辑环境的实现
  • python3通过subprocess模块调用脚本并和脚本交互的操作
  • python subprocess pipe 实时输出日志的操作
  • 通过实例解析python subprocess模块原理及用法
  • python使用matplotlib:subplot绘制多个子图的示例
  • Python子进程subpocess原理及用法解析
  • python字符串替换re.sub()实例解析

标签:呼和浩特 毕节 江苏 湖州 衡水 驻马店 股票 中山

巨人网络通讯声明:本文标题《Python中sub()的用法说明》,本文关键词  Python,中,sub,的,用法,说明,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《Python中sub()的用法说明》相关的同类信息!
  • 本页收集关于Python中sub()的用法说明的相关信息资讯供网民参考!
  • 推荐文章