在某些特定字符之间的字符串中找到一些文本

find a some text in string bettwen some specific characters

嗨,我可以 select 并列出字符串中的一些特定文本 例如,我有一个字符串

"== example ==
Random text here
=== example2 ==="

我需要 select 示例位置的文本和下面的示例,但另一个 = 停止示例文本与下面的文本一起放入列表但没有练习 2 只有练习没有“==”和下面的文本这个列表: 我会用这个试试:

import wikipedia
page = wikipedia.page("Albert Einstein")
text = page.content

lst = []
l = []
n = 1
for pos,char in enumerate(text):
    try:
        if(char == "="):
            lst.append(pos)
            if lst[n+1] == lst[n+2] +1:
                    print(text[lst[n+1]:lst[n+2] +1])
                    l.append(text[lst[n]:lst[n+1] +1])
                    n =+ 1
            else:
                continue
    except IndexError:
        continue

预期输出:["Life and career", "Albert Einstein was born in Ulm(text bellow headers")

我知道您想提取 == someString == 之间的字符串,这些字符串基本上是您要搜索的维基百科页面的 headers。

对于这些类型的要求,regex 是您所需要的,而不是手动字符串索引搜索。建议您阅读 regex

这是您的用例的代码

import wikipedia
import re
page = wikipedia.page("Albert Einstein")
text = page.content
regex_result = re.findall("==\s(.+?)\s==", text)
print(regex_result)

regex_result 是一个包含字符串的列表
regex_result
的快照