首页 > 解决方案 > 在python中检查字符串中的前缀字符的代码

问题描述

我想知道python中以下代码的对应代码是什么。我想检查字符串中的字符后缀。一个例子,如果我有一个 str="anything" 并且如果字符是元音并且如果前缀是元音并且后缀是元音,我想添加一个 '2' 所以我想在字符之前和之后添加 '2ä 所以结果将是 str="a0n0y0th0i0ng"。我希望我能尽可能地澄清它。在c++中我们可以写str.back(),在python中有这样的东西吗?

标签: python

解决方案


您可以使用正则表达式替换。

import re

my_str = 'anything'
output = re.sub(r'([aeiouy])', r'0\g<1>0, my_str)
# '0a0n0y0th0i0ng'

如果你真的不想要它,你可以跟进,比如说,output.strip('0')去掉前面的角色。

re.sub()将正则表达式作为其第一个参数(我们为单个字母提交一个捕获组,可以是任何元音),并将替换作为第二个参数。在这种情况下,替换r'0\g<1>0字面意思是插入0,然后是捕获的组 1(即元音),然后是另一个0(有关更多详细信息,请参见此答案)。


推荐阅读