问题:对字符串中的文本做查找和替换

解决方案:

1、对于简单模式:str.replace(old, new[, max])

2、复杂模式:使用re模块中的re.sub(匹配的模式, newstring, oldstring[,替换个数])函数

3、re.subn()可以获得替换的总次数

# example.py
#
# Examples of simple regular expression substitutionimport re#simple sample
text1='yeah,but no,but yeah,but no,but yeah,but no,but yeah'
print (text1.replace('yeah','yeh'))
print (text1.replace('no','yes',2))
print ('---------------------------')# Some sample text
text = 'Today is 11/27/2012. PyCon starts 3/13/2013.'
datepat = re.compile(r'(\d+)/(\d+)/(\d+)')
# (a) Simple substitution \3-表示匹配的模式中第3个模式组
print(datepat.sub(r'\3-\1-\2', text))  #等价于print (re.sub(r'(\d+)/(\d+)/(\d+)',r'\3-\1-\2', text))
print ('*****************************')# (b) Replacement function  替换回调函数
from calendar import month_abbr
def change_date(m):mon_name = month_abbr[int(m.group(1))]return '{} {} {}'.format(m.group(2), mon_name, m.group(3))print(datepat.sub(change_date, text))
print (re.sub(r'(\d+)/(\d+)/(\d+)',change_date, text))
print ('++++++++++++++++++++++++++++++++')
# 通过re.subn()获取替换的总次数
newtext,n=datepat.subn(r'\3-\1-\2', text) print (newtext) print (n)

>>> ================================ RESTART ================================
>>>
yeh,but no,but yeh,but no,but yeh,but no,but yeh
yeah,but yes,but yeah,but yes,but yeah,but no,but yeah
---------------------------
Today is 2012-11-27. PyCon starts 2013-3-13.
*****************************
Today is 27 Nov 2012. PyCon starts 13 Mar 2013.
Today is 27 Nov 2012. PyCon starts 13 Mar 2013.
++++++++++++++++++++++++++++++++
Today is 2012-11-27. PyCon starts 2013-3-13.
2
>>> 

转载于:https://www.cnblogs.com/apple2016/p/5790780.html

【python cookbook】【字符串与文本】5.查找和替换文本相关推荐

  1. Python 实用技巧之正则表达式查找和替换文本的操作方法

    1.需求 我们想对字符串中的文本做查找和替换. 2.解决方案 对于简单的文本模式,使用str.replace()即可. 例如: 学习python中有什么不懂的地方,小编这里推荐加小编的python学习 ...

  2. 对字符串进行 匹配,查找,替换,判断。

    编程或者电脑使用过程中,经常需要对字符串进行 匹配,查找,替换,判断.如果单纯用代码 if () ,whlie 什么的进行比较复杂麻烦.正则表达式是一种强大灵活的文本处理工具,专门对字符串进行匹配,查 ...

  3. html实现文本的查找与替换,在 InDesign 中查找并替换文本

    在对文档进行修订时,"查找并替换"操作将很有用.您可以全局查找并替换文本.对象.字体.字形和颜色. "查找/更改"对话框 A. 查找/更改选项卡 B. &quo ...

  4. shell 字符串处理汇总(查找,替换等等)

    http://blog.chinaunix.net/uid-20771623-id-3841521.html shell 字符串处理汇总(查找,替换等等) 字符串: 简称"串".有 ...

  5. 查找和替换文本和其他 Word 文档中的数据(转)

    今天看一段vba代码,目的去除段首空格,替换的时候查找的文字是^w,不知其意,然后搜索去了 参考:http://zhidao.baidu.com/link?url=dPoOamRVLkY-WpD6v5 ...

  6. re.IGNORECASE --以不区分大小写的方式对文本做查找和替换

    问题:以不区分大小写的方式对文本做查找和替换 解决方案:需要使用re模块并且对各种操作都要加上re.IGNORECASE标记 import re text = 'UPPER PYTHON, lower ...

  7. JS实现文本中查找并替换字符

    JS实现文本中查找并替换字符 效果图: 代码如下,复制即可使用: <!DOCTYPE html><html> <head><style type=" ...

  8. Microsoft Word 教程:如何在 Word 中查找和替换文本?

    欢迎观看 Microsoft Word 教程,小编带大家学习 Microsoft Word 的使用技巧,了解如何在 Word 中查找和替换文本. 如果处理大量文本,并需要搜索替换某个单词或短语,可使用 ...

  9. 如何在Excel中查找和替换文本和数字

    查找和替换工具是 Excel 的一个强大但经常被遗忘的功能.让我们看看如何使用它来查找和替换电子表格中的文本和数字,以及它的一些高级功能. 在 Excel 中查找和替换文本和数字 处理大型电子表格时, ...

最新文章

  1. 纯CSS制作的图形效果
  2. python列表排序后返回索引排序
  3. SQL Server之日期和时间函数
  4. 如何参与github上的开源项目?
  5. 利用SQL对数据进行清洗处理
  6. MATLAB生成FPGA COE文件之XILINX FPGA滤波器系数
  7. ei eo eq什么意思_EI源刊是什么意思
  8. 一文读懂Git工作流
  9. python中df占位符_PYTHON 中的%s %占位符用法
  10. 解析单句sql_SqlParser 一个利用正则表达式解析单句SQL的类
  11. 申请以及集成 Stripe 的 Alipay 支付方案
  12. CREO产品柔性建模 参数化 模具 TOP DOWN设计
  13. 用python裁剪PDF文档
  14. 菊花是哪个城市的市花1_2.html,花中四君子——秋菊知多少?
  15. Google Earth Engine(GEE)——NASA-USDA增强型SMAP全球土壤水分数据以10公里的空间分辨率提供全球的土壤水分信息
  16. C++边学边用,使用类完成复数运算,可自动识别表达式(详细注释)
  17. VB6基本数据库应用(二):建立数据库
  18. stm32f103c8t6的内部Flash读取
  19. 年轻代、年老代和持久代
  20. android上调试H5小工具

热门文章

  1. wex5 php开发,WeX5平台PHP开发 使用说明文档
  2. highroller赌城java下载,非常有用的链接
  3. wireshark 抓包iphone 4g_比4G下续航短2小时,苹果回应iPhone12用5G耗电快:与运营商一道做更多优化工作...
  4. 【linux】【tcpdump】linux之tcpdump抓包及wireshark分析详解
  5. ppt计算机英语介绍,介绍电脑的英语ppt
  6. 如何开启linux的dhcp服务器,怎么开启DHCP服务器啊
  7. Linux mysql 登录 2002,Linux 下 Mysql error 2002 错误解决
  8. python 关键字大全_一日一技:用实例列举python中所有的关键字(01)
  9. 文本编辑器查看 cprintf颜色_airWriter for mac(文本编辑软件)
  10. php正则匹配sg-nc-wap_php正则匹配