2016-12-01 84 views
0

我有转化为unciode字符串列表单词的列表,但我不能够从字符串,例如列表匹配特定单词的结尾的字符串:它包含蟒蛇unicode字符串匹配

列表其中它需要removed.For例如 उपलब्धियां串是当转换为unicode字由包含字符串的u'\u0909\u092a\u0932\u092c\u094d\u0927\u093f\u092f\u093e\u0902'

列表中,如果发现在以Unicode一个字的末尾需要删除哪个 r3_bad= [u"0900", u"0901", u"0902",u"0903"]; 在这种情况下是u0902是最后从坏字符串列表中删除。

我试图

if re.search(r'u$[0-3]',word[-1]) : 

我不知道为什么它不返回true 。

请帮助提前致谢。

+0

只是打印'r'u $ [0-3]''和'字[-1]',你应该明白为什么Python不能找到*前*在*后者*中。 –

回答

0

为什么要RegEx?我认为你需要像普通字符串比较:

s = u'\u0909\u092a\u0932\u092c\u094d\u0927\u093f\u092f\u093e\u0902' 
r3_bad= [u'\u0900',u'\u0901',u'\u0902',u'\u0903'] 

print s # output: उपलब्धियां 
if s[-1] in r3_bad: print s[:-1] # output: उपलब्धिया 
+0

在我的情况下,我得到一个错误,如 – imshashi17

+0

在我的情况下,我收到一个错误,如:“Unicode等于比较无法将两个参数都转换为Unicode”r3_bad的类型是s的列表和类型,如你的答案是unicode。请帮助 – imshashi17

+0

运算符'in'搜索任何可迭代对象,以便您可以使用另一个unicode字符串而不是列表,它们都是相同的: r3_bad = u'\ u0900 \ u0901 \ u0902 \ u0903' – Organis