我在做我的语言学项目(语言是马拉雅拉姆语)。你知道吗
我的名单是
x= [u'1\u0d30\u0d3e\u0d2e\u0d28\u0d4d\u200d', u'5\u0d05\u0d35\u0d28\u0d4d\u200d']
我想从列表中的每一项中提取整数和Unicode。你知道吗
预期输出为
1 \u0d30\u0d3e\u0d2e\u0d28\u0d4d\u200
5 \u0d05\u0d35\u0d28\u0d4d\u200d
首先,我尝试将第一项x[0]转换为ascii
print unicodedata.normalize('NFKD',x[0]).encode('ascii','ignore')
输出为1。你知道吗
我认为生成这个输出是因为unicode in列表是针对马拉雅拉姆语的。你知道吗
然后我试图找到“\u”的第一个索引
x[0].index("\u")
执行此操作时出错。你知道吗
字符序列
\uXXXX
表示单个unicode字符,而不是字符串中的字符序列。你知道吗您可以得到预期的输出,如下所示:
(假设整数只有一个数字)
对于更一般的情况,一种解决方案是使用正则表达式提取整数:
相关问题 更多 >
编程相关推荐