Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Python如何删除除字母和数字之外的所有字符?(代码示例)

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

青灯夜游
青灯夜游asal
2019-03-21 10:03:5912029semak imbas

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

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教程

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

Atas ialah kandungan terperinci Python如何删除除字母和数字之外的所有字符?(代码示例). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn