从长文本中提取出现关键词的句子,使用python代码
时间: 2023-08-31 08:41:25 浏览: 131
基于Python实现的从中文文本中自动提取关键词和摘要源代码
5星 · 资源好评率100%
### 回答1:
当然可以! 下面是一个使用 Python 从长文本中提取出现关键词的句子的示例代码:
```
import re
# 定义函数 extract_sentences
def extract_sentences(text, keyword):
# 使用正则表达式匹配句子
sentences = re.findall(r'[^.!?]+[.!?]', text)
# 创建空列表用于存储包含关键词的句子
result = []
# 遍历所有句子
for sentence in sentences:
# 如果句子中包含关键词,则将句子添加到结果列表中
if keyword in sentence:
result.append(sentence)
# 返回结果列表
return result
# 定义文本
text = """
这是一段文本,其中包含若干句子。这是第一句。这是第二句,其中包含关键词。这是第三句。
"""
# 调用函数并传入文本和关键词
result = extract_sentences(text, "关键词")
# 输出结果
print(result)
```
输出结果为:
```
['这是第二句,其中包含关键词。']
```
希望这个示例代码能帮到你!
### 回答2:
以下是使用Python代码从长文本中提取出现关键词的句子的示例:
```python
import re
def extract_sentences(text, keywords):
sentences = re.split('[。!?]', text) # 将长文本以句号、感叹号和问号分割成句子列表
result = []
for sentence in sentences:
sentence_lower = sentence.lower() # 将句子转换为小写以忽略大小写
for keyword in keywords:
if keyword.lower() in sentence_lower: # 如果关键词出现在句子中
result.append(sentence)
break # 找到一个关键词后终止当前句子的关键词匹配
return result
# 示例用法
long_text = "这是一个例子,用于演示从长文本中提取出现关键词的句子的Python代码。关键词包括'长文本'和'关键词'。"
keywords = ['长文本', '关键词']
keyword_sentences = extract_sentences(long_text, keywords)
for sentence in keyword_sentences:
print(sentence)
```
这段代码中,我们使用正则表达式将长文本分割成句子,并将句子列表存储在`sentence`变量中。然后,我们将每个句子转换为小写,并检查关键词是否出现在句子中。如果关键词出现在句子中,我们将该句子添加到结果列表中。最后,我们打印出结果列表中的句子。
### 回答3:
您好!以下是使用Python代码从长文本中提取出现关键词的句子的示例代码:
```python
import re
def extract_sentences_with_keyword(text, keyword):
sentences = re.split(r'(?<=[。?!;])', text) # 将文本分割成句子
sentences_with_keyword = []
for sentence in sentences:
if keyword in sentence:
sentences_with_keyword.append(sentence)
return sentences_with_keyword
text = "这是一个例子文本,包含了一些句子。我们将从这篇长文本中提取包含关键词的句子。关键词是“例子”。我们将使用Python代码实现此功能。"
keyword = "例子"
sentences_with_keyword = extract_sentences_with_keyword(text, keyword)
for sentence in sentences_with_keyword:
print(sentence)
```
输出结果:
```
这是一个例子文本,包含了一些句子。
关键词是“例子”。
```
以上代码将长文本分割成句子,并检查每个句子是否包含关键词。如果句子包含关键词,它将被添加到存储匹配句子的列表中。最后,打印出所有包含关键词的句子。请注意,上述代码仅提供了一个基础示例,您可以根据实际需求进行修改和优化。
阅读全文