使用正则表达式会去除a-z,A-Z,0-9,下划线和字符串中的正斜杠以外的所有字符,所有其他字符都将被删除并用下划线代替。在替换的版本中,不应存在连续的多个下划线。
例如
输入:-“ Ab 4/5(t)” 输出:-“ Ab_4 / 5_t _”
输入:-“ AB ___ cd @#E” 输出:-“ AB_cd_E”
答案 0 :(得分:0)
您可以将re.sub
与以下模式一起使用,该模式用下划线替换一个或多个连续的不需要的字符:
import re
output = re.sub(r'[^a-zA-Z0-9/]+', '_', s)
因此给定s = 'Ab 4/5 (t)'
,output
变为:
Ab_4/5_t_
,给定s = 'AB___cd@# E'
的情况下,output
变为:
AB_cd_E