Erkennt strings, die mit nicht-englischen Zeichen in Python
Ich habe einige Zeichenfolgen, die eine Mischung aus Deutsch und keiner Englisch Briefe. Zum Beispiel:
w='_1991_اف_جي2'
Wie kann ich erkennen, diese Arten von string mit Regex oder andere schnelle Methode in Python?
Ich lieber nicht zu vergleichen Buchstaben des Strings nacheinander mit einer Liste von Buchstaben, aber um dies zu tun in einem Schuss und schnell.
InformationsquelleAutor der Frage TJ1 | 2014-11-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie einfach überprüfen, ob die Zeichenfolge kodiert werden können nur mit ASCII-Zeichen (Zeichen, die das lateinische alphabet + ein paar andere Zeichen). Wenn es nicht codiert ist, dann hat es die Zeichen aus einem anderen alphabet.
Hinweis: der Kommentar
# -*- coding: ....
. Sollte es dort an der Spitze der python-Datei (sonst würden Sie erhalten eine Fehlermeldung über Codierung)Zurück
F, T, F, F, T
InformationsquelleAutor der Antwort Salvador Dali
Wenn Sie die Arbeit mit strings (nicht unicode-Objekte), können Sie reinigen es mit der übersetzung und prüfen mit
isalnum()
die besser ist als Ausnahmen:Sie können auch filter nicht-ascii-Zeichen aus einer Zeichenfolge mit dieser Funktion:
InformationsquelleAutor der Antwort Katrina Malakhova
InformationsquelleAutor der Antwort PemaGrg