Wie kann ich nicht-alphanumerische Zeichen effizient aus Zeichenfolgen in Python entfernen?

Barbara Streisand
Freigeben: 2024-11-05 22:20:02
Original
784 Leute haben es durchsucht

How Can I Efficiently Remove Non-Alphanumeric Characters from Strings in Python?

Entfernen nicht-alphanumerischer Zeichen aus Zeichenfolgen in Python

Das Entfernen nicht-alphanumerischer Zeichen aus Zeichenfolgen umfasst das Entfernen anderer Zeichen als Buchstaben, Zahlen usw Unterstriche. Es gibt zwar Lösungen für PHP, diese stimmen jedoch möglicherweise nicht mit den Pythonic-Prinzipien überein.

Eine effiziente Methode besteht darin, einen regulären Ausdruck zu definieren, der nicht-alphanumerischen Zeichen (W_) entspricht, und ihn durch eine leere Zeichenfolge zu ersetzen. Verwendung der re.sub()-Funktion zusammen mit einem kompilierten regulären Ausdrucksmuster:

<code class="python">import re, string
pattern = re.compile('[\W_]+')  # Compiled regular expression
string.printable = string.printable.replace(pattern, '')  # Substitute non-alphanumeric characters with empty string</code>
Nach dem Login kopieren

Andere Methoden umfassen die Verwendung von Listenverständnissen zum Herausfiltern nicht alphanumerischer Zeichen oder die Verwendung der str.isalnum()-Methode innerhalb von filter( ):

<code class="python">''.join(ch for ch in string if ch.isalnum())
filter(str.isalnum, string)</code>
Nach dem Login kopieren

Vergleichendes Benchmarking zeigte, dass der re.sub()-Ansatz mit einem kompilierten regulären Ausdruck die beste Leistung erbrachte:

$ python -m timeit -s \
    "import re, string; pattern = re.compile('[\W_]+')" \
    "pattern.sub('', string.printable)"
100000 loops, best of 3: 11.2 usec per loop
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich nicht-alphanumerische Zeichen effizient aus Zeichenfolgen in Python entfernen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!