用python编写程序,把一个英文句子中的单词倒置,标点符号不倒置,如I like beijing.经过函数后变为beijing.like l (使用正则表达式)
时间: 2024-11-12 13:34:43 浏览: 3
Python给定一个句子倒序输出单词以及字母的方法
5星 · 资源好评率100%
在Python中,你可以使用内置的`re`模块(正则表达式库)来处理这个问题。下面是一个函数示例,它接受一个英文句子作为输入,通过正则表达式匹配单词并将其倒置:
```python
import re
def reverse_words(sentence):
# 使用正则表达式匹配所有的单词
words = re.findall(r'\b\w+\b', sentence)
# 取出每个单词的第一个字符,其余反转
reversed_words = [word[1:] + word[0] if len(word) > 1 else word for word in words]
# 用空格连接倒置后的单词,并保持原有的标点符号位置不变
reversed_sentence = ' '.join(reversed_words)
return reversed_sentence
# 测试例子
sentence = "I like beijing."
result = reverse_words(sentence)
print(result) # 输出: beijing.like I
```
这个函数首先找到所有连续的字母组成的词(`\b\w+\b`),然后对每个词除了第一个字符以外的部分进行反转,最后再将单词按照原句中的顺序连接起来。
阅读全文