Как правильно разбить строку, содержащую предложение со специальными символами, используя пробелы в качестве разделителя? Используя метод разделения регулярных выражений, я не могу получить желаемый результат.python, regex split и специальный символ
Пример кода:
# -*- coding: utf-8 -*-
import re
s="La felicità è tutto" # "The happiness is everything" in italian
l=re.compile("(\W)").split(s)
print " s> "+s
print " wordlist> "+str(l)
for i in l:
print " word> "+i
Выход:
s> La felicità è tutto
wordlist> ['La', ' ', 'felicit', '\xc3', '', '\xa0', '', ' ', '', '\xc3', '', '\xa8', '', ' ', 'tutto']
word> La
word>
word> felicit
word> Ã
word>
word> ?
word>
word>
word>
word> Ã
word>
word> ?
word>
word>
word> tutto
в то время как я искал выход как:
s> La felicità è tutto
wordlist> ['La', ' ', 'felicità', ' ', 'è', ' ', 'tutto']
word> La
word>
word> felicità
word>
word> è
word>
word> tutto
Следует отметить, что ев является строкой который возвращается из другого метода, поэтому я не могу заставить кодировку как
s=u"La felicità è tutto"
В официальной документации на юникод и рег-код на русском языке я не нашел удовлетворительного объяснения.
Спасибо.
Алессандро
Вы разделяете символы, отличные от слов, которые включают не только пробелы, но (по-видимому) и акцентированные символы. – mpen