Introductie
Deze artikel beschrijft twee veelvoorkomende methoden die je kunt gebruiken om karakters uit een string te verwijderen met behulp van Python:
- de
String replace()
-methode - de
String translate()
-methode
Om verschillende manieren te leren om spaties uit een string te verwijderen in Python, raadpleeg Verwijder spaties uit een string in Python.
A Python String object is immutable, so you can’t change its value. Any method that manipulates a string value returns a new String object.
De voorbeelden in deze tutorial maken gebruik van de Python interactieve console in de commandoregel om verschillende methoden te demonstreren die karakters verwijderen.
Implementeer je Python-applicaties vanuit GitHub met behulp van DigitalOcean App Platform. Laat DigitalOcean zich richten op het schalen van je app.
Verwijder karakters uit een string met de replace()
-methode
De String replace() methode vervangt een karakter door een nieuw karakter. U kunt een karakter uit een string verwijderen door het karakter (of karakters) om te vervangen op te geven als het eerste argument en een lege string als het tweede argument.
Declareer de string variabele:
- s = 'abc12321cba'
Vervang het karakter door een lege string:
- print(s.replace('a', ''))
De output is:
Outputbc12321cb
De output toont aan dat beide voorkomens van het karakter a
uit de string zijn verwijderd.
Verwijder Nieuwlijn Karakters Uit een String Met behulp van de replace()
Methode
Declareer een string variabele met enkele nieuwlijn karakters:
- s = 'ab\ncd\nef'
Vervang het nieuwlijn karakter door een lege string:
- print(s.replace('\n', ''))
De output is:
Outputabcdef
De output toont aan dat beide nieuwlijn karakters (\n
) uit de string zijn verwijderd.
Verwijder een Substring uit een String met behulp van de replace()
Methode
De replace()
methode neemt strings als argumenten, dus je kunt ook een woord in een string vervangen.
Declareer de string variabele:
- s = 'Helloabc'
Vervang een woord door een lege string:
- print(s.replace('Hello', ''))
De output is:
Outputabc
De output laat zien dat het woord Hello
uit de invoerstring is verwijderd.
Verwijder tekens een specifiek aantal keren met behulp van de replace()
methode
Je kunt een derde argument doorgeven aan de replace()
methode om het aantal vervangingen in de string aan te geven voordat gestopt wordt. Als je bijvoorbeeld 2
opgeeft als derde argument, dan worden alleen de eerste 2 voorkomens van de gegeven tekens vervangen.
Declareer de string variabele:
- s = 'abababab'
Vervang de eerste twee voorkomens van het teken door het nieuwe teken:
- print(s.replace('a', 'A', 2)) # voer vervanging tweemaal uit
De output is:
OutputAbAbabab
De output laat zien dat de eerste twee voorkomens van het a
teken zijn vervangen door het A
teken. Aangezien de vervanging slechts tweemaal is uitgevoerd, blijven de andere voorkomens van a
in de string achter.
Verwijder tekens uit een tekenreeks met behulp van de translate()
-methode
De Python-tekenreeksmethode translate()
vervangt elk karakter in de tekenreeks met behulp van de opgegeven mappingtabel of dictionary.
Declareer een tekenreeksvariabele:
- s = 'abc12321cba'
Haal de Unicode-codepuntwaarde van een karakter op en vervang deze door None
:
- print(s.translate({ord('b'): None}))
De uitvoer is:
Outputac12321ca
De uitvoer toont aan dat beide voorkomens van het karakter b
uit de tekenreeks zijn verwijderd zoals gedefinieerd in de aangepaste dictionary.
Verwijder meerdere tekens uit een tekenreeks met behulp van de translate()
-methode
U kunt meerdere tekens in een tekenreeks vervangen met behulp van de translate()
-methode. Het volgende voorbeeld gebruikt een aangepaste dictionary, {ord(i): None for i in 'abc'}
, die alle voorkomens van a
, b
en c
in de opgegeven tekenreeks vervangt door None
.
Declareer de tekenreeksvariabele:
- s = 'abc12321cba'
Vervang alle tekens abc
door None
:
- print(s.translate({ord(i): None for i in 'abc'}))
De output is:
Output12321
De output toont aan dat alle voorkomens van a
, b
en c
zijn verwijderd uit de string zoals gedefinieerd in het aangepaste woordenboek.
Verwijder newline karakters uit een string met behulp van de translate()
methode
U kunt newline karakters in een string vervangen met behulp van de translate()
methode. Het volgende voorbeeld maakt gebruik van een aangepast woordenboek, {ord('\n'): None}
, dat alle voorkomens van \n
in de gegeven string vervangt door None
.
Declareer de string variabele:
- s = 'ab\ncd\nef'
Vervang alle \n
karakters door None
:
- print(s.translate({ord('\n'): None}))
De output is:
Outputabcdef
De output toont aan dat alle voorkomens van het newline karakter \n
zijn verwijderd uit de string zoals gedefinieerd in het aangepaste woordenboek.
Conclusie
In deze zelfstudie heb je enkele methoden geleerd die je kunt gebruiken om karakters uit strings te verwijderen in Python. Ga verder met leren over Python strings.
Source:
https://www.digitalocean.com/community/tutorials/python-remove-character-from-string