python - 如何从字符串中查找字符串中的字节位置,而不是字符位置?

标签 python string python-3.x position

我的文本编辑器(vim)可以给出字符串在字符串中的位置,但计算字节数,而不是字符数。

示例:

s="I don't take an apéritif après-ski"

当我搜索单词 apéritif 时,我的文本编辑器给出的位置:
16,25

Python 给出相同单词的位置:
16,24

Vim 提供了在编辑器中执行 python 代码的可能性。
在我的一个 python 脚本中,我做了很多切片。
但如果字符串中有重音字符,我永远找不到正确的单词。
python 有没有办法解决这个问题?
我可以在python中找到字符串中字符串的字节位置吗?

最佳答案

诚然,这是一个幼稚的解决方案。 您可以将文本和单词编码为字节,然后以编码单词作为参数对编码文本运行 find() 操作。

def f(text,word):
    en_text=bytes(text,encoding="utf-8")
    en_word=bytes(word,encoding="utf-8")
    start = en_text.find(en_word)
    return (start,start+len(en_word))

运行时:

f("I don't take an apéritif après-ski","apéritif")

返回 (16, 25)

关于python - 如何从字符串中查找字符串中的字节位置,而不是字符位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41868966/

相关文章:

python - 无法附加到调试器中的进程

python - 如何在 scipy.stats 中指定泊松分布的尾部值?

ruby-on-rails - ruby : multidimensional %w array?

string - 在不以纯文本形式存储子字符串的情况下在流中查找子字符串

python - 逗号从 Windows 中的 Python 3 sys.argv 中消失

python 3.3 : struct. pack 不接受字符串

Python statsmodels 格兰杰因果关系测试返回空字典

php - 异常的PHP字符串长度以及使用PHP搜索Elasticsearch时

python - Python套接字服务器无法解码来自OAUTH的重定向

python - 尽管正确(?)xpath,Selenium Webdriver Python 仍找不到元素