如何使用Python移除字符串中的特殊字符及数字?
- 内容介绍
- 文章标签
- 相关推荐
本文共计497个文字,预计阅读时间需要2分钟。
在Python数据处理过程中,有时需要将字符串中的特殊字符和数字进行筛选。我们可以利用正则表达式轻松实现这一功能。以下是一个示例代码:
pythonimport re
def filter_string(input_str): pattern=r'[^\w\s]' # 筛选特殊字符和数字,保留字母、数字和空格 filtered_str=re.sub(pattern, '', input_str) return filtered_str
示例input_str=Hello, world! 12345result=filter_string(input_str)print(result) # 输出:Hello world
在python数据处理过程中,有时候需要将字符串中的特殊字符和数字进行剔除。我们可以利用正则表达式来轻松的完成它。
File "D:\software\python\lib\re.py", line 194, in sub
return _compile(pattern, flags).sub(repl, string, count)
TypeError: expected string or bytes-like object
举个例子:
# -*- coding: UTF-8 -*-
"""
@author: Roc-xb
"""
import re
if __name__ == '__main__':
content = "中国人民银行关于商业银行办理养老保险个人账户基金人民币协议存款的通知", "银发[2002]369号", "中国人民银行各分行、营业管理部,各国有独资商业银行,股份制商业银行:"
text = re.sub(r'[\s\d,。??!“”‘’\[\]…:;:()《》、—..*~~_--]', '', content)
print(text)
这个例子比较简单,但是你运行之后,会发现会报错:
异常错误解决办法:
这是因为content不是一个字符串,需要将content转换成字符串类型或者将content定义成字符串类型。
#!/usr/bin/python# -*- coding: UTF-8 -*-
"""
@author: Roc-xb
"""
import re
if __name__ == '__main__':
content = "中国人民银行关于商业银行办理养老保险个人账户基金人民币协议存款的通知,银发[2002]369号中国人民银行各分行、营业管理部,各国有独资商业银行,股份制商业银行:"
text = re.sub(r'[\s\d,。??!“”‘’\[\]…:;:()《》、—..*~~_--]', '', content)
print(text)
程序运行结果:
本文共计497个文字,预计阅读时间需要2分钟。
在Python数据处理过程中,有时需要将字符串中的特殊字符和数字进行筛选。我们可以利用正则表达式轻松实现这一功能。以下是一个示例代码:
pythonimport re
def filter_string(input_str): pattern=r'[^\w\s]' # 筛选特殊字符和数字,保留字母、数字和空格 filtered_str=re.sub(pattern, '', input_str) return filtered_str
示例input_str=Hello, world! 12345result=filter_string(input_str)print(result) # 输出:Hello world
在python数据处理过程中,有时候需要将字符串中的特殊字符和数字进行剔除。我们可以利用正则表达式来轻松的完成它。
File "D:\software\python\lib\re.py", line 194, in sub
return _compile(pattern, flags).sub(repl, string, count)
TypeError: expected string or bytes-like object
举个例子:
# -*- coding: UTF-8 -*-
"""
@author: Roc-xb
"""
import re
if __name__ == '__main__':
content = "中国人民银行关于商业银行办理养老保险个人账户基金人民币协议存款的通知", "银发[2002]369号", "中国人民银行各分行、营业管理部,各国有独资商业银行,股份制商业银行:"
text = re.sub(r'[\s\d,。??!“”‘’\[\]…:;:()《》、—..*~~_--]', '', content)
print(text)
这个例子比较简单,但是你运行之后,会发现会报错:
异常错误解决办法:
这是因为content不是一个字符串,需要将content转换成字符串类型或者将content定义成字符串类型。
#!/usr/bin/python# -*- coding: UTF-8 -*-
"""
@author: Roc-xb
"""
import re
if __name__ == '__main__':
content = "中国人民银行关于商业银行办理养老保险个人账户基金人民币协议存款的通知,银发[2002]369号中国人民银行各分行、营业管理部,各国有独资商业银行,股份制商业银行:"
text = re.sub(r'[\s\d,。??!“”‘’\[\]…:;:()《》、—..*~~_--]', '', content)
print(text)
程序运行结果:

