在某些特定字符之间的字符串中找到一些文本
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)
嗨,我可以 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)