セパレータとして空白を使用して、特殊文字を含む文を含む文字列を正しく分割するにはどうすればよいですか? 正規表現の分割方法を使用すると、目的の結果が得られません。
コード例:
# -*- 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 は別のメソッドから返される文字列であるため、次のようなエンコーディングを強制できないことに注意してください
s=u"La felicità è tutto"
Unicode と reg-ex の公式の python ドキュメントでは、満足のいく説明が見つかりませんでした。
ありがとう。
アレッサンドロ