7-2 请用正则表达式实现,多行字符串处理 分数 60 作者 聂作先 单位 福建工程学院 有一段多行的英文文本,其中有的行内有单词连续重复了2次,编写程序检查重复的单词并输出重复的单词及其所在的行的内容。 输入格式: 第一行为字符串的总行数n,后面输入n行字符串。 输出格式: 输出为“is, This is is a table.” 输入样例: 在这里给出一组输入。例如: 3 This is a desk. That is is a table. There are many many apples. 输出样例: 在这里给出相应的输出。例如: is,That is is a table. many,There are many many apples.
时间: 2024-03-06 13:47:53 浏览: 216
好的,这是一个使用正则表达式实现的 Python 程序,用于检查一个多行的英文文本中,哪些行中有单词重复出现了两次,并输出这些单词以及它们所在的行的内容。以下是完整代码:
```python
import re
def check_duplicate_words(lines):
result = []
for i, line in enumerate(lines):
matches = re.findall(r'\b(\w+)\s+\1\b', line)
if matches:
for match in matches:
result.append((match, line))
return result
# 示例
text = '''This is a desk.
That is is a table.
There are many many apples.
'''
lines = text.strip().split('\n')
result = check_duplicate_words(lines)
for word, line in result:
print(f"重复单词 '{word}' 在以下行中出现了两次:\n{line}")
```
运行结果:
```
重复单词 'is' 在以下行中出现了两次:
That is is a table.
重复单词 'many' 在以下行中出现了两次:
There are many many apples.
```
阅读全文