3.输入一个字符串,将此字符串中最长的单词输出。要求至少使用一个自定义函数。 输入格式: 测试数据有多组,处理到文件尾。每组测试数据输入一个字符串(长度不超过80)。 输出格式: 对于每组测试,输出字符串中的最长单词,若有多个长度相等的最长单词,输出最早出现的那个。这里规定,单词只能由大小写英文字母构成。 输入样例: Keywords insert, two way insertion sort, Abstract This paper discusses three method for two way insertion words. insert, two way sorted. You're a boy. 输出样例: insertion discusses insert You
时间: 2024-03-14 09:47:13 浏览: 232
可以使用以下的 Python 代码来解决这个问题:
```python
import re
def find_longest_word(s):
words = re.findall(r'\b[a-zA-Z]+\b', s)
longest_word = ''
for word in words:
if len(word) > len(longest_word):
longest_word = word
return longest_word
while True:
try:
s = input()
print(find_longest_word(s))
except:
break
```
这个程序首先定义了一个 `find_longest_word` 函数,用于找到给定字符串中的最长单词。该函数使用正则表达式 `r'\b[a-zA-Z]+\b'` 来匹配所有的单词。具体来说,`\b` 表示单词边界,`[a-zA-Z]+` 表示一个或多个大小写字母,`\b` 表示单词边界。这样可以确保只匹配由大小写字母构成的单词。
然后,程序通过输入循环读取每个测试数据,并调用 `find_longest_word` 函数来找到最长的单词,最后将其输出。注意,由于输入是多组测试数据,因此我们使用了一个 `try`/`except` 块来捕获输入结束的异常,以便程序能够正常退出。
阅读全文