711 Stimmen

Bestimmte Zeichen aus einer Zeichenkette in Python entfernen

Ich versuche, bestimmte Zeichen aus einer Zeichenkette mit Python zu entfernen. Dies ist der Code, den ich im Moment verwende. Leider scheint es nichts zu tun, um die Zeichenfolge.

for char in line:
    if char in " ?.!/;:":
        line.replace(char,'')

Wie mache ich das richtig?

64voto

ghostdog74 Punkte 305138
>>> line = "abc#@!?efg12;:?"
>>> ''.join( c for c in line if  c not in '?:!/;' )
'abc#@efg12'

15voto

Muhammad Alkarouri Punkte 22748
line = line.translate(None, " ?.!/;:")

13voto

eatkin Punkte 139
>>> s = 'a1b2c3'
>>> ''.join(c for c in s if c not in '123')
'abc'

1voto

pkm Punkte 2575
#!/usr/bin/python
import re

strs = "how^ much for{} the maple syrup? $20.99? That's[] ricidulous!!!"
print strs
nstr = re.sub(r'[?|$|.|!|a|b]',r' ',strs)#i have taken special character to remove but any #character can be added here
print nstr
nestr = re.sub(r'[^a-zA-Z0-9 ]',r'',nstr)#for removing special character
print nestr

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X