2013-01-24 120 views
1

我不是能夠在下面的代碼爲使用Unicode字符分割分割功能

actualdata=metatry['content'].split("-") 
print "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"+actualdata[0] 
dat=actualdata[0].split("\u2013") 
print "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"+dat[0] 
productlist.append(dat[0]) 

輸出不擺脫\分裂Unicode字符\ u2013 u2013即使其目前 將是有益的,如果有人幫我在這。

+1

你能否提供'metatry ['content']'值? – Vladimir

+0

「三星Galaxy Note II \ u2013最新的智能手機在印度」 – Dhatri

+0

它是類型'unicode' – Dhatri

回答

2

嘗試加入'u''\u2013'作爲metatry['content']是Unicode字符串:

u"Samsung Galaxy Note II \u2013 Latest Smartphone in India ".split(u'\u2013') 
+0

它的工作。感謝這樣的快速回復。 – Dhatri

+0

@ vindhya - 不客氣。 – root

1

metatry['content']unicode object,而不是一個字符串。所以,你的split調用失敗:

>>> s = u"Samsung Galaxy Note II \u2013 Latest Smartphone in India " 
>>> s.split("\u2013") 
[u'Samsung Galaxy Note II \u2013 Latest Smartphone in India '] 

你必須將其與的Unicode系統字符\u2013而不是分裂:

>>> s = u"Samsung Galaxy Note II \u2013 Latest Smartphone in India " 
>>> s.split(u"\u2013") 
[u'Samsung Galaxy Note II ', u' Latest Smartphone in India '] 

PS:你說你用美麗的湯工作。 Beautiful Soup uses unicode strings only

+0

非常感謝您的回覆... – Dhatri