python3(9)---去掉字符串中的英文字符和数字

方法一:使用punctuation。

punctuation其中定义的是所以英文的标点符号。

add_punc相当于是自定义的,

如果只要去掉英文,那么if判断的地方,只保留add_punc即可,如果英文的标点符号也想去掉,就使用punctuation

比如,要去掉数字:add_punc=‘0123456789’ 即可。字母也同理。

代码:

from string import punctuation
str = "《三国演义》中的“水镜先生”是司马徽56585622"
add_punc='0123456789' # 自定义--数字
all_punc = punctuation + add_punc
temp = []
for c in str:
    if c not in all_punc :
        temp.append(c)
newText = ''.join(temp)
print(newText)
#输出结果:《三国演义》中的“水镜先生”是司马徽

同理 这种方式可以去掉任何特定的字符。请参考另一篇文章:去掉字符串中的标点符号

 

方法二:

使用re.sub 函数

import re

str="aksjnekljfklen"

temp = re.sub('[a-zA-Z]','1',str)

输出结果就都是1。

注意的是,sub需要import re; 第二,他的参数使用的是单引号,第三,他的第一个参数,也 就是【a-z】那部分是正则表达式的写法。

  • 5
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值