不能在字符串中用单个下划线替换多个下划线(regex python)

时间:2019-03-14 16:30:25

标签: regex python-3.x replace

def strip_string(s):
    import re
    replaced_string = re.sub('[^\\w/]+', '_', s)
    return replaced_string
print(strip_string('h^&ell`.,  |o w/p]{+p__orld'))

1 个答案:

答案 0 :(得分:0)

如果您想使用regex用单个_替换字符串中的多个_,则可以

replaced_string = re.sub('[_]+', '_', s)

完整代码

import re

def strip_string(s):

    replaced_string = re.sub('[_]+', '_', s)
    return replaced_string
print(strip_string('h^&ell`.,  |o w/p]{+p__orld'))
print(strip_string('hello___world__'))

# Output
h^&ell`.,  |o w/p]{+p_orld
hello_world_