python 去除字符串中的特殊字符,python 去除字符串
Python字符串是不可变的,所以不能直接删除字符串之间的特定字符。下面这篇文章主要介绍使用Python删除字符串中一个字符的各种实现比较的相关信息。有需要的朋友可以参考一下。
00-1010 1.如何去掉字符串中不需要的字符?2.代码演示摘要
目录
实际案例:
(1)过滤掉用户输入前后多余的空白字符:“nick2008@gmail.com”
(2)在某个窗口下的编辑文本中过滤 \ r: Hello World \ r \ n
(3)去掉文中的unicode组合符号(调音):u n h o,chfn (或92
解决方案;
方法一:strip()、lstrip()和rsttrip()去掉字符串两端的字符。
2.删除单个固定位置的字符,可以使用切片拼接的方式。
3:字符串或正则表达式re.sub()的replace()替换方法删除任何位置的字符。(常规)
string translate()方法可以同时删除很多不同的字符。
1、如何去掉字符串中不需要的字符?
#方法1:1:strip类的方法
#删除字符串两端的字符
美国广播公司123
str.strip方法介绍:
strip([chars]) -字符串或unicode
Chars不指定默认情况下删除空白字符(空格,\n,\t,\r)。
#删除两端的空白,但保留中间的空白
打印(s.strip())
#只删除左端的空白
print(s.lstrip())
#仅删除右端的空白
print(s.rstrip())
s2= - abc
#去掉s2中的加法和减法
打印(s2.strip(-))
#方法二:删除固定位置字符,切片,拼接。
s3=abc:123
#只删除固定位置的冒号
s4=s3[0:3] s3[4:]
打印(s4)
#方法3:
因为第一种方法不能删除中间的一些字符,只能删除两端。
第三种方法可以完成部分中间字符的删除。
s5=\tabc\t123\txyz
# Clear all \t在s5中,可以用字符串替换replace,
#但这种方式只能替换一个
打印(s5.replace(\t ,))
s6=\tabc\t123\txyz\ropq\r
进口re
#从s6中删除\t和\r
print(re sub([\ t \ r],,s6))
#方法4:
str.translate方法介绍:
S.translate(表格)-字符串
如果table为None,则没有映射;如果存在,就是一个字符映射到另一个字符的表;
s7=abc1230323xyz
#现在加密s7字符串。加密规则是用X代替所有的A,
# b换成y,c换成Z,依次xyz换成abc。
#建立映射表
make=str.maketrans(abcxyz , xyzabc )
打印(制作)
#加密s7字符串
打印(s7.translate(make))
s8=abc\refg\n2342\t
# delete \ r \ n \ t in S8,并建立映射表str_trans
str_trans=str.maketrans(,, \t\r\n )
print(s8.translate(str_trans))
#去掉音标
u=u nho,CHFn
导入unicodedata,sys
#将原始输入标准化为分解的格式字符
a=unicodedata.normalize(NFD ,u)
用dict.fromkeys()方法构造一个字典,每个Unicode和tone作为键,对应的值都是None。
Sys.maxunicode :是一个整数,它给出最大unicode码位的值,即1114111(十六进制的0x10FFFF)。
Unicodedata.combining:返回以整数形式分配给字符chr的规范组合类。如果没有定义复合类,则返回0。
这样,我们成功地将所有组合类的值都设置为None。
CMB _ chrs=dict . from keys(c for c in range(sys . max unicode)
if unicodedata.combining(chr(c)))
#调用翻译功能删除所有音调
打印(a.translate(cmb_chrs))
2、代码演示
关于使用Python从字符串中删除字符的各种方法的比较,本文到此结束。有关Python从字符串中移除字符内容的更多信息,请搜索流行的IT软件开发工作室以前的文章或继续浏览下面的相关文章。希望大家以后多多支持热门IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。