从字符串中删除 \u?
Remove \u from string?
我在列表中有几个词属于 '\uword'
类型。我想用空字符串替换 '\u'
。我环顾四周,但到目前为止对我没有任何帮助。我尝试使用 "%r"%word
转换为原始字符串,但这没有用。我也尝试使用 word.encode('unicode-escape')
但没有得到任何结果。有什么想法吗?
编辑
添加代码
word = '\u2019'
word.encode('unicode-escape')
print(word) # error
word = '\u2019'
word = "%r"%word
print(word) # error
因为您在编码和 unicode 方面遇到问题,所以了解您正在使用的 python 版本会很有帮助。
我不知道我是否理解你的意思,但这应该可以解决问题:
string = r'\uword'
string.replace(r'\u','')
如果我没理解错的话,你可以不用正则表达式。试试看:
>>> # string = '\u2019'
>>> char = string.decode('unicode-escape')
>>> print format(ord(char), 'x')
2019
我错误地假设字符串的 .encode
方法会像列表的 .sort()
方法一样就地修改字符串。但是根据文档
The opposite method of bytes.decode() is str.encode(), which returns a bytes representation of the Unicode string, encoded in the requested encoding.
def remove_u(word):
word_u = (word.encode('unicode-escape')).decode("utf-8", "strict")
if r'\u' in word_u:
# print(True)
return word_u.split('\u')[1]
return word
vocabulary_ = [remove_u(each_word) for each_word in vocabulary_]
鉴于您只处理字符串。
我们可以使用字符串函数.
简单地将它转换为字符串
>>> string = u"your string"
>>> string
u'your string'
>>> str(string)
'your string'
猜猜这个就可以了!
我在列表中有几个词属于 '\uword'
类型。我想用空字符串替换 '\u'
。我环顾四周,但到目前为止对我没有任何帮助。我尝试使用 "%r"%word
转换为原始字符串,但这没有用。我也尝试使用 word.encode('unicode-escape')
但没有得到任何结果。有什么想法吗?
编辑
添加代码
word = '\u2019'
word.encode('unicode-escape')
print(word) # error
word = '\u2019'
word = "%r"%word
print(word) # error
因为您在编码和 unicode 方面遇到问题,所以了解您正在使用的 python 版本会很有帮助。 我不知道我是否理解你的意思,但这应该可以解决问题:
string = r'\uword'
string.replace(r'\u','')
如果我没理解错的话,你可以不用正则表达式。试试看:
>>> # string = '\u2019'
>>> char = string.decode('unicode-escape')
>>> print format(ord(char), 'x')
2019
我错误地假设字符串的 .encode
方法会像列表的 .sort()
方法一样就地修改字符串。但是根据文档
The opposite method of bytes.decode() is str.encode(), which returns a bytes representation of the Unicode string, encoded in the requested encoding.
def remove_u(word):
word_u = (word.encode('unicode-escape')).decode("utf-8", "strict")
if r'\u' in word_u:
# print(True)
return word_u.split('\u')[1]
return word
vocabulary_ = [remove_u(each_word) for each_word in vocabulary_]
鉴于您只处理字符串。 我们可以使用字符串函数.
简单地将它转换为字符串>>> string = u"your string"
>>> string
u'your string'
>>> str(string)
'your string'
猜猜这个就可以了!