Python3的字符串替换,这里总结了三个函数,replace()translate()re.sub()

replace()

python 中的 replace() 方法把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次

str.replace(old, new[, max])

a = 'Hello,world. ByeBye!'
print(a.replace('l','Q'))
print(a.replace('abcdefghi','0123456789'))
print(a.replace('world','apple'))
HeQQo,worQd. ByeBye!
Hello,world. ByeBye!
Hello,apple. ByeBye!

可见,replace()函数可以替换string中的单个字符,也可以替换连续的字符,但无法生成字符替换映射表

敲黑板!

pandas 里面也有一个replace()函数,其用法更加多样化。比如,可以加入一个字典,用于替换对不同的值进行替换。

s = pd.Series([0, 1, 2, 3, 4])
s.replace({0:'a',1:'b'})
Out[2]:
0    a
1    b
2    2
3    3
4    4
dtype: object

translate()

translate()函数也是python自带。与replace() 函数不同的是,这里使用str.maketrans函数来创建一个表,它可以使用各种参数,但是需要三个Arguments。

str.maketrans('','',del)

第一个参数为被替换的字符,第二个参数为替换的字符,第三个参数为要删除的字符

import string
a = 'Hello,world. ByeBye!'
remove = string.punctuation
table = str.maketrans('abcdefgh','01234567',remove)
print(a.translate(table))
H4lloworl3 By4By4

string.punctuation返回所有的标点符号,更多字符串常量如下图:

str.maketrans()的前两个参数相当于一个映射表,如上述结果,所有的'e'被替换成了'4'

第三个参数为要删除的字符,上述例子删除了所有的标点符号,如果要删除的字符还要加上空格的话,则可以这样:

table = str.maketrans('abcdefgh','01234567',remove+' ')
print(a.translate(table))
H4lloworl3By4By4

re.sub()

这个是re库里的函数,其原型为re.sub(pattern, repl, string, count)

第一个参数为正则表达式需要被替换的参数,第二个参数是替换后的字符串,第三个参数为输入的字符串,第四个参数指替换个数。默认为0,表示每个匹配项都替换。

import re
a = 'Hello,world. ByeBye!'
print(re.sub(r'[A-Z]', '8', a))
8ello,world. 8ye8ye!

上述例子是把所有的大写字母替换成8,下述表示只替换前2个这样的大写字母。

print(re.sub(r'[A-Z]', '8', a, 2))
8ello,world. 8yeBye!

python3 字符串替换 replace translate re.sub相关推荐

  1. C++ STL string字符串替换 replace函数的使用

    //C++ string字符串替换 //replace()函数的使用 #include <iostream> #include <string> using namespace ...

  2. Python字符串替换replace、截取[]、查找find、计数count、分割split

    不同语言中replace用法不一样,有的是replace(string,old_word,new_word),有的是string.replace(old_word,new_word) 同样,截取等功能 ...

  3. python数字替换成中文replace_Python3字符串替换replace(),translate(),re.sub()

    Python3的字符串替换,这里总结了三个函数,replace()和translate()和re.sub() replace() python 中的 replace() 方法把字符串中的 old(旧字 ...

  4. C#不区分大小写的字符串替换(Replace)函数

    在.NET中,不调用C++/CLI,进行字符串替换有好几种方法: 1.最常用的,就是String实例.Replace(),但这个不能忽略大小写. 2.System.Text.Regex(Regular ...

  5. python字符串替换replace,Python字符串替换

    Python字符串替换 Python字符串替换教程 在 Python replace()函数详解 定义 replace() 方法把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第 ...

  6. JavaScript字符串替换replace方法

    在日常的js开发中, 当要把字符串中的内容替换时,如果使用类似C#的string.replace方法,如下 var str='aabbccaa'; str=str.replace('aa','dd') ...

  7. js字符串替换replace

    replace() 用来替换字符串中字符 //replace(old字符串,new字符串) // 字符串处理let aiqi = 'aiqi1?a'const a= aiqi.replace('?a' ...

  8. 替换字符串_面试题精选:字符串替换

    字符串处理在程序猿日常工作工作中非常常见,常见到几乎各种语言中都已经封装好了字符串相关的API,我们只需要直接拿过来用就好.就拿Java为例,jdk中的String()类几乎封装了所有字符串相关的操作 ...

  9. java 字符串格式替换_[Java] - 格式字符串替换方法

    Java 字符串格式替换方法有两种,一种是使用String.format(...),另一种是使用MessageFormat.format(...) 如下: import java.text.Messa ...

最新文章

  1. linux系统无法挂载U盘
  2. 虚幻4 控制台_鹅厂新手机游戏开测,虚幻4引擎开发战略游戏,能否超过率土之滨...
  3. linux crontab 每5分钟执行一次_Linux系统配置及服务管理_第10章_计划任务
  4. Spring事务回滚和异常类
  5. SAP Fiori RouteMatched and getById
  6. 学习ui设计_如果您想学习UI设计,该怎么办
  7. GIS实战应用案例100篇(七)-基于GIS和ENVI的矢量化提取水体边界
  8. linux 内存使用原理,linux中内存使用原理
  9. git报错:‘fatal:remote origin already exists‘怎么处理?附上git常用操作以及说明。
  10. Qt文档阅读笔记-Object Trees Ownership解析与实例(为何某些程序在被关闭的时候会崩溃)
  11. python学习之老男孩python全栈第九期_day017作业
  12. 组素数 蓝桥填空题2013省赛
  13. linux显示磁盘使用情况命令,Linux查看磁盘使用情况命令(示例代码)
  14. 捷联惯导系统学习7.3(惯性/卫星组合导航 )
  15. Robotium-基础理论介绍
  16. Typora中写论文怎么添加reference(参考文献)
  17. 判断对象是否可回收、垃圾回收算法
  18. 学习Python之旅
  19. 常用去除离群值的算法!
  20. N、Z、Q、R 分别代表什么

热门文章

  1. abap 常用系统变量
  2. 上下两个x轴_点胶机:3轴,4轴,5轴,你懂了吗?
  3. Linux Kernel TCP/IP Stack — L2 Layer — Linux VLAN device for 802.1.q(虚拟局域网)
  4. 5G 信令流程 — UE 状态机
  5. GIT在测试过程中的基本使用
  6. Digital Image Processing 学习笔记3
  7. H2DBEngine——Driver的设计与实现
  8. 网络信息安全之防火墙的设计 (三)
  9. go 实现 kafka 消息发送、接收
  10. Protobuf3 + Netty4: 在socket上传输多种类型的protobuf数据