Entfernen Sie Zahlen aus dem String in Python

Muhammad Waiz Khan 30 Januar 2023
  1. Entfernen Sie Zahlen aus dem String mit der Methode string.join() in Python
  2. Entfernen von Zahlen aus dem String in Python mit der Methode string.translate()
  3. Entfernen von Zahlen aus dem String in Python mit der Methode re.sub()
Entfernen Sie Zahlen aus dem String in Python

In diesem Tutorial werden verschiedene Methoden zum Entfernen der Zahlen oder Ziffern aus der Zeichenkette in Python untersucht. Normalerweise entfernen wir während der Datenbereinigung Zahlen aus den Daten in der Verarbeitung natürlicher Sprache.

Angenommen, wir haben eine Zeichenkette abcd1234efg567 und möchten die Ziffern aus der Zeichenkette entfernen, um eine Zeichenkette wie abcdefg zu erhalten. Wir können die Zahlen in Python mit den folgenden Methoden aus der Zeichenkette entfernen:

Entfernen Sie Zahlen aus dem String mit der Methode string.join() in Python

Die Methode string.join(iterable) verwendet ein iterierbares Objekt iterable als Eingabe, verbindet seine Elemente unter Verwendung des Werts der Zeichenkette string als Trennzeichen und gibt die resultierende Zeichenkette als Ausgabe zurück.

Um Zahlen aus der Zeichenkette zu entfernen, durchlaufen wir zunächst die Zeichenkette und wählen nichtstellige Werte aus, übergeben sie an die Methode string.join(), um sie zu verbinden und die resultierende Zeichenkette mit nichtstelligen Zeichen als Ausgabe abzurufen.

Der folgende Beispielcode zeigt, wie Sie mit der Methode string.join() die Zahlen aus der Zeichenkette in Python entfernen.

string = "abcd1234efg567"
newstring = "".join([i for i in string if not i.isdigit()])
print(newstring)

Ausgabe:

abcdefg

Entfernen von Zahlen aus dem String in Python mit der Methode string.translate()

Die Methode string.translate(map) in Python 2 verwendet eine Zuordnungstabelle oder ein Dictionary als Eingabe und gibt die Zeichenkette zurück, nachdem die angegebenen Zeichen durch die in der Eingabezuordnungstabelle oder dem Dictionary definierten Zeichen ersetzt wurden.

Der folgende Beispielcode zeigt, wie Sie mit der Methode string.translate() die Zahlen aus der Zeichenkette in Python 2 entfernen.

from string import digits

string = "abcd1234efg567"
newstring = string.translate(None, digits)
print(newstring)

Ausgabe:

abcdefg

In Python 3 verwendet die Datei string.translate(table) die Übersetzungstabelle als Eingabe anstelle der Zuordnungstabelle oder des Dictionaries, wie in Python 2. Daher müssen wir die Methode str.maketrans() verwenden, um eine zu erhalten Übersetzungstabelle, um sie als Eingabe für die Methode string.translate() zu verwenden.

Der folgende Beispielcode zeigt, wie die Methoden string.translate() und str.maketrans() verwendet werden, um die Zahlen in Python 3 aus der Zeichenkette zu entfernen:

from string import digits

string = "abcd1234efg567"
table = str.maketrans("", "", digits)
newstring = string.translate(table)
print(newstring)

Ausgabe:

abcdefg

Entfernen von Zahlen aus dem String in Python mit der Methode re.sub()

Das re.sub(pattern, replace, string) nimmt die string als Eingabe und gibt die Zeichenkette zurück, indem die nicht überlappenden Vorkommen der Zeichenkette pattern (als regulärer Ausdruck beschrieben) durch den Wert replace ersetzt werden in der Zeichenkette.

Der reguläre Ausdruck für Ziffern ist [0-9]+. Wir müssen dies nur als pattern-Argument und '' als replace übergeben, um die Zahlen mit der Methode re.sub() aus der Eingabe string zu entfernen.

Der folgende Beispielcode zeigt, wie Sie mit der Methode re.sub() Zahlen aus der Zeichenkette entfernen:

import re

string = "abcd1234efg567"
newstring = re.sub(r"[0-9]+", "", string)
print(newstring)

Ausgabe:

abcdefg

Verwandter Artikel - Python String