2016-04-15 16 views
2

Ich habe die folgenden Sätze, die ich alle Interpunktion entfernen möchte.So entfernen Sie chinesische Satzzeichen in Python

首页 » 政策法规 » 正文吉林省实施《中华人民共和国老年人权益保障法》若干规定 发布时间: 2008-01-04    

Ich möchte alle chinesischen Interpunktion, einschließlich Leerzeichen "" entfernen. Unten ist mein Code:

line = line.decode("utf8") 
line = re.sub("[\s+\.\!\/_,$%^*(+\"\']+|[+——!,。?、[email protected]#¥%……&*():;《)《》“”()»〔〕-]+".decode("utf8"), "".decode("utf8"),line) 

Allerdings habe ich noch leeren Speicherplatz nicht gelöscht. Ich frage mich, ob es leichtere Möglichkeiten gibt, chinesische Interpunktion zu entfernen?

+0

Ich nehme einen anderen Satz '想做/兼 _ 职/学生 _/的, 加, 我 Q hinzuzufügen: 1 5. 8 0. !! ?? 8 6. 0. 2. 3 惊, 惊, 喜, 哦 'in meiner Frage, aber ich kann es nicht posten. – flyingmouse

+0

Nun, ich denke, Ihr Beispiel ist genug und dieser Satz könnte Spam sein, also fügen Sie ihn nicht in die Frage ein. –

Antwort

0

re.sub ist sub(pattern, repl, string, count=0, flags=0)

als Code, pattern Unicode ist, repl Unicode auch ist (eigentlich nicht entschlüsseln erforderlich),

aber string ist utf-8 kodierten Strings nicht Unicode .

die Sie interessieren,

print re.sub(ur"[\s+\.\!\/_,$%^*(+\"\']+|[+——!,。?、[email protected]#¥%……&*():;《)《》“”()»〔〕-]+", "", s.decode("utf8"))