2024-09-28 20:57:11 发布
网友
我需要的一个规则是,如果字符串的最后一个元音(aeiou)位于集合中的字符('t','k','s','tk')之前,那么需要在元音之后添加一个:。在
:
因此,在Python中,如果我有字符串"orchestras",我需要一个规则,将其转换为"orchestra:s"
"orchestras"
"orchestra:s"
edit:(t,k,s,tk)将是字符串中的最后一个字符
如果您还没有找到答案,我建议您尝试[python_root]/tools/scripts/redemo.py这是一个不错的测试区。在
re.sub(r"([aeiou])(t|k|s|tk)([^aeiou]*)$", r"\1:\2\3", "orchestras") re.sub(r"([aeiou])(t|k|s|tk)$", r"\1:\2", "orchestras")
你不会说t/k/s/tk后面是否还有其他辅音。第一个regex允许这样做,只要不再有元音,所以它会将“fist”更改为“fi:st”。如果单词必须以t/k/s/tk结尾,那么使用第二个regex,它对“fist”没有任何作用。在
另一个替代正则表达式:
re.sub("(?<=[aeiou])(?=(?:t|k|s|tk)$)", ":", "orchestras")
这个不需要用记忆组来代替。在
如果您还没有找到答案,我建议您尝试[python_root]/tools/scripts/redemo.py这是一个不错的测试区。在
你不会说t/k/s/tk后面是否还有其他辅音。第一个regex允许这样做,只要不再有元音,所以它会将“fist”更改为“fi:st”。如果单词必须以t/k/s/tk结尾,那么使用第二个regex,它对“fist”没有任何作用。在
另一个替代正则表达式:
这个不需要用记忆组来代替。在
相关问题 更多 >
编程相关推荐