You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python实现将元音替换为「元音+r+元音」的字符串处理需求

实现元音重复替换的Python程序

需求明确:将字符串中的每个元音(a/e/i/o/u)替换为「原元音+r+原元音」的形式,比如输入burger,输出bururgerer。

你提供的基础代码仅处理了a、e、i三个元音,且通过逐个写replace的方式不够灵活。下面提供两种更通用的实现方案:

方法1:遍历字符逐个处理

逻辑直观,适合理解基础流程:

text = input("Please add text: ")
vowels = {'a', 'e', 'i', 'o', 'u'}
result = []
for char in text:
    if char in vowels:
        result.append(f"{char}r{char}")
    else:
        result.append(char)
print(''.join(result))
  • 定义包含所有目标元音的集合vowels
  • 遍历输入字符串的每个字符,判断是否为元音:
    • 是元音则按规则拼接成原元音+r+原元音后加入结果列表
    • 非元音直接加入结果列表
  • 最后用join将列表转换为字符串输出

方法2:使用正则表达式(更简洁)

利用re.sub批量匹配并替换,代码更紧凑:

import re

text = input("Please add text: ")
# 匹配所有小写元音并按规则替换
result = re.sub(r'([aeiou])', r'\1r\1', text)
print(result)
  • r'([aeiou])':匹配单个小写元音,用括号将其捕获为分组
  • r'\1r\1':替换为「捕获的元音 + r + 捕获的元音」,\1代表第一个分组的内容
  • 如果需要处理大写元音(如A/E/I/O/U),可将正则改为r'([aeiouAEIOU])',替换规则保持不变

测试示例:输入burger,两种方法都会输出bururgerer,符合需求。

内容的提问来源于stack exchange,提问作者krbjds

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 12:20:39