当前位置:Gxlcms > Python > Python如何删除除字母和数字之外的所有字符?(代码示例)

Python如何删除除字母和数字之外的所有字符?(代码示例)

时间:2021-07-01 10:21:17 帮助过:690人阅读

字符串操作是日常编码和Web开发中非常重要的任务;例如:HTTP查询中的大多数请求和响应都是字符串形式,有时我们需要删除一些无用的数据。下面本篇文章就来给大家介绍一些Python方法来将指定字符串中除字母和数字之外的所有字符都删除,希望对大家有所帮助。

方法一:使用re.sub()函数

在Python中正则表达式的功能是很强大的,而re.sub()函数就是Python中的正则替换字符串。re.sub()函数可以使用正则匹配要替换的字符串,进而将匹配的字符串替换成别的字符串。

语法:

re.sub(pattern , repl , string , count = 0 , flags = 0)

此函数中的“sub”代表子字符串(SubString),在给定的字符串(第3个参数)中搜索特定的正则表达式模式(第1个参数),找到后用repl(第2个参数)中的替换子字符串模式进行替换,计数检查并保持出现这种情况的次数。

代码示例:

import re 
  
# 初始化字符串
ini_string = "123ab#cg|+f&ph*&^p:, .@! eiw"
  
#
输出初始字符串 print ("初始字符串 : ", ini_string) # 使用re.sub()函数 result = re.sub('[\W_]+', '', ini_string) # 输出替换后的字符串 print ("替换后的字符串:", result)

输出:

初始字符串 :  123ab#cg|+f&ph*&^p:, .@! eiw
替换后的字符串: 123abcgfphpeiw

方法二:使用isalpha()+isnumeric()+join()方法

isalpha()方法是Python的一种用于字符串处理的内置方法,可以检查字符串是否只由字母组成。如果字符串中的所有字符都是字母,则返回“True”,否则返回“False”。

isnumeric()方法是Python的一种用于字符串处理的内置方法,可以检查字符串是否只由数字组成。如果字符串中的所有字符都是数字字符,则返回“True”,否则返回“False”。

join()方法用于将序列中的元素以指定的字符连接生成一个新的字符串。

代码示例:

import re 
  
# 初始化字符串
ini_string = "123ab#cg|+f&ph*&^p:, .@! eiw"
  
#
输出初始字符串 print ("初始字符串 : ", ini_string) # 使用isalpha()+isnumeric()+join()方法 getVals = list([val for val in ini_string if val.isalpha() or val.isnumeric()]) result = "".join(getVals) # 输出替换后的字符串 print ("替换后的字符串:", result)

输出:

初始字符串 :  123ab#cg|+f&ph*&^p:, .@! eiw
替换后的字符串: 123abcgfphpeiw

方法三:使用isalnum()++join()

isalnum()函数用于检查给定字符串中的所有字符是否都是字母或数字。

代码示例:

import re 
  
# 初始化字符串
ini_string = "123ab#cg|+f&ph*&^p:, .@! eiw"
  
#
输出初始字符串 print ("初始字符串 : ", ini_string) # 使用isalnum()+join()方法 getVals = list([val for val in ini_string if val.isalnum()]) result = "".join(getVals) # 输出替换后的字符串 print ("替换后的字符串:", result)

输出:

初始字符串 :  123ab#cg|+f&ph*&^p:, .@! eiw
替换后的字符串: 123abcgfphpeiw

相关视频教程推荐:《Python教程》

以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注Gxl网相关教程栏目!!!

以上就是Python如何删除除字母和数字之外的所有字符?(代码示例)的详细内容,更多请关注Gxl网其它相关文章!

人气教程排行