使用Python从字符串中去除除以下字符之外的所有字符:a-z,A-Z,0-9,下划线和正斜杠

时间:2019-02-28 17:17:29

标签: python regex

使用正则表达式会去除a-z,A-Z,0-9,下划线和字符串中的正斜杠以外的所有字符,所有其他字符都将被删除并用下划线代替。在替换的版本中,不应存在连续的多个下划线。

例如

输入:-“ Ab 4/5(t)” 输出:-“ Ab_4 / 5_t _”

输入:-“ AB ___ cd @#E” 输出:-“ AB_cd_E”

1 个答案:

答案 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