gpt4 book ai didi

python - 在非标签字符串之间搜索内容

转载 作者:行者123 更新时间:2023-11-28 17:35:54 25 4
gpt4 key购买 nike

我正在使用 Python尝试从这个旧代码中提取数据,感兴趣的内容不是在整洁的 HTML 标签之间,而是在包括标点符号和字母的字符串之间。尽管我获取了初​​始字符串的第一个实例和最终边界字符串的最后一个实例之间的所有内容,但我并没有获取每条内容。例如:

>>> q = '"text:"content_of_interest_1",body, code code "text:":content_of_interest_2",body'

>>> start1 = '"text:"'

>>> end1 = '",body'

>>> print q[q.find(start1)+len(start1):q.rfind(end1)]
content_of_interest_1",body, code code "text:":content_of_interest_2

我反而想找出由 start1 和 end1 限定的每个内容实例,即:

content_of_interest_1, content_of_interest_2

我如何重新表述我的代码以获取每个字符串绑定(bind)内容实例而不是如上所述的所有绑定(bind)内容?

最佳答案

您需要使用 q.findend1 而不是 rfind 用于第一个子字符串和 rfind最后一个:

>>> q[q.find(start1)+len(start1):q.find(end1)]
'content_of_interest_1'
>>> q[q.rfind(start1)+len(start1):q.rfind(end1)]
':content_of_interest_2'

但是使用find 只会给您第一次出现startend 的索引。因此,作为完成此类任务的更合适的方法,您可以简单地使用正则表达式:

>>> re.findall(r':"(.*?)"',q)
['content_of_interest_1', ':content_of_interest_2']

关于python - 在非标签字符串之间搜索内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30593694/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com