在 Python 中的特定字符串后查找 n 个字符

Find n characters after a specific string in Python

我有一个网页的来源。它只是一大堆随机数、字母和函数名,以字符串形式保存在 python3 中。我想在这个字符串的源代码中找到说 \"followerCount\": 的文字,但我也想找到它后面的一点文字(n 个字符) .这有望包含我正在寻找的文本。我可以在 后面的 n 个字符 python3 中搜索 的特定部分吗?

使用.find()得到位置:

html = "... lots of html source ..."
position = html.find('"followerCount":')

然后使用字符串切片来提取字符串的那部分:

n = 50 # or however many characters you want
print(html[position:position+n])

基于模式查找文本的标准方法是正则表达式。例如,您可以在此处询问“followerCount:”

之后的任意三个字符
import re

s = 'a bunch of randoms_characters/"followerCount":123_more_junk'

match = re.search(r'(?<="followerCount":).{3}', s)
if match:
    print(match.group(0))
    #prints '123'

或者,您可以制作一个没有后视的正则表达式,并捕获一组中的三个字符:

import re

s = 'a bunch of randoms_characters/"followerCount":123_more_junk'

match = re.search(r'"followerCount":(.{3})', s)
if match:
    print(match.group(1))
    #prints '123'