在处理字符串时,有时候我们需要移除其中的特殊符号(如%,#,&等)。有人提出了以下问题:是否有一种函数可以从字符串中移除任何符号?为了解决这个问题,可以使用以下方法之一:
第一种方法是使用re.sub
函数结合string.punctuation
和' \n'
来移除所有特殊符号:
x = re.sub('|'.join(map(re.escape, string.punctuation + ' \n')), '', x)
第二种方法是使用以下正则表达式,只保留字母和数字字符:
x = re.sub('[^a-zA-Z0-9]', '', x)