在字符串中查找Unicode字符

0 投票
1 回答
866 浏览
提问于 2025-04-18 13:45

抱歉如果这个问题之前已经有人问过,但我不太确定该怎么搜索。我在用Python,想在一段文本中找到一个字符。这个字符串看起来是这样的:☺G18M1329D3920,2511171♥7006。我对那个心形符号感兴趣。我知道它是一个二进制6,但我想用类似于 .find() 的字符串方法来返回它的位置,该怎么做呢?

1 个回答

2

当你说“二进制”时,我想你是指“Unicode码点”。这就是字符的数字表示方式。

Unicode码点可以通过在Python字符串中转义来表示。比如,'心'这个符号的码点是U+2665。

所以你可以这样写你的字符串:

mystring = u'\u263aG18M1329D3920,2511171\u26657006'

注意,我是通过在心符号前加上\u,然后跟上码点2665来转义的。

掌握了这个知识后,你就可以把它应用到find()函数中。

mystring.find(u'\u2665')

补充:Python 2.7在字符串前需要加上u前缀。

撰写回答