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

P语言解密Python代码修复:解决双元音、句首元音及索引越界问题

解决思路

P语言的加密规则是将连续元音组合(视为单个元音单元V)替换为VpV结构,解密核心就是全局匹配所有VpV模式,将其替换回原元音单元V即可,使用正则表达式可以高效覆盖所有场景,避免手动遍历索引的各类问题。
首先定义元音匹配规则:连续的1个及以上大小写英文字母a/e/i/o/u视为元音单元V,匹配VpV结构后直接替换为V。

修复后代码

import re

# 匹配规则:分组1为连续元音序列,后面接p再接和分组1完全相同的元音序列
pattern = re.compile(r'([aeiouAEIOU]+)p\1')
encrypted = input()
decrypted = pattern.sub(r'\1', encrypted)
print(decrypted)

问题验证

  • 双元音场景适配:输入boapoat会匹配到(oa)p\1,替换后得到boat;输入scoporpiopion会依次匹配(o)p\1、(i)p\1、(o)p\1,替换后得到scorpion,完全符合要求。
  • 句首元音解密:输入加密后的Apa会匹配到(A)p\1,替换后得到A,解决句首元音无法解密的问题。
  • 索引越界修复:无需手动遍历字符串索引,无论输入是否以.结尾都不会出现越界报错,也不需要额外加终止判断逻辑。

内容的提问来源于stack exchange,提问作者Monkey D. Ruffy

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 14:45:07