2013-01-24 80 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