删除特殊标点符号

2024-09-29 23:31:43 发布

您现在位置:Python中文网/ 问答频道 /正文

在我的文本中,我有一些特殊字符,例如em破折号和guillemets(尖引号),它们不会通过省略string.punctuation而被删除

在Python 3中,从字符串中删除这种标点符号的正确方法是什么

import string

mystring = ' »De fleste – digitale –'
mystring.translate(str.maketrans('', '', string.punctuation))
' »De fleste – digitale –'

Tags: 字符串文本stringde引号省略em标点符号
2条回答

试试这个:

import itertools as it

mystring = ' »De fleste – digitale –'
newstring = ''
mystring = newstring.join(it.filterfalse(lambda x: x in '»–', mystring))
print(mystring) #=> " De fleste  digitale"

以下是一个简单的解决方案:

    mystring = ' »De fleste – digitale –'
    print(''.join(x for x in mystring if x not in ['»', '–', '?', '!', '«']))

您可以在.join()函数内的列表中添加任何要忽略的内容

相关问题 更多 >

    热门问题