Ich brauche die Lösungen zu this question, außer für Python! Ich habe versucht, die Regex-Bibliothek für Python, as apparently, die die Verwendung von POSIX-Ausdrücke in Python Regexes ermöglicht, aber dennoch denke ich, es enthält keine Unicode-Zeichen in der Klasse [:alpha:]
. ZB:Wie können Zeichen mit Akzenten in Python mit einem Regex verglichen werden?
>>> re.search(r'[[:alpha:] ]+','Please work blåbær and NOW stop 123').group(0)
'Please work bl'
Wenn ich es will Please work blåbær and NOW stop
EDIT zum Spiel: ich Python bin mit 2,7
EDIT 2: habe ich versucht, die folgenden:
>>> re.search(re.compile('[\w ]+', re.UNICODE),'Please work blåbær and NOW stop 123').group(0)
'Please work bl\xc3'
Nicht ganz, was ich wollte (Ich möchte den Teil nach dem ersten Nicht-ASCII-Zeichen auch anpassen), b Zumindest stimmte es mehr auf Charakter ab als vorher. Was sollte ich hier tun, um es mit dem Rest von dem, was ich will, in Einklang zu bringen?
EDIT 3: Ich möchte keine Nicht-Wort-Zeichen zusammenbringen; Mit "Wort" meine ich a-z, A-Z, Raum und alle akzentuierten Variationen von Wortzeichen. Ich hoffe, ich habe meine Idee verstanden; in einem Satz wie
lets match força, but stop before that comma
möchte ich 4 nur lets match força
EDIT zum Spiel: So Python Ich habe versucht, drei für diese ein Skript nur zu verwenden:
>>> re.search(re.compile('[\w ]+', re.UNICODE),'lets match força, but stop before that comma').group(0)
'lets match força'
Ich denke, es funktioniert zum größten Teil in Python 3, außer dass es auch Zahlen (die ich definitiv nicht will) und Unterstriche übereinstimmt. Irgendeine Möglichkeit, dies zu beheben, in Python 2 oder 3?