Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
需要正则表达式搜索/替换帮助,Python_Python_Regex - Fatal编程技术网

需要正则表达式搜索/替换帮助,Python

需要正则表达式搜索/替换帮助,Python,python,regex,Python,Regex,我需要的一条规则是,如果字符串的最后一个元音(aeiou)在集合中的字符('t'、'k'、's'、'tk')之前,则需要在元音之后添加一个: 因此,在Python中,如果我有字符串“orchestras”,我需要一条规则将其转换为“orchestras:s” 编辑:(t,k,s,tk)将是字符串中的最后一个字符 re.sub(r"([aeiou])(t|k|s|tk)([^aeiou]*)$", r"\1:\2\3", "orchestras") re.sub(r"([aeiou])(t|k|s

我需要的一条规则是,如果字符串的最后一个元音(aeiou)在集合中的字符('t'、'k'、's'、'tk')之前,则需要在元音之后添加一个

因此,在Python中,如果我有字符串
“orchestras”
,我需要一条规则将其转换为
“orchestras:s”

编辑:(t,k,s,tk)将是字符串中的最后一个字符

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之后是否还有其他辅音。第一个正则表达式允许这样做,只要不再有任何元音,因此它将把“fist”改为“fi:st”。如果单词必须以t/k/s/tk结尾,则使用第二个正则表达式,这对“fist”没有任何作用


你不会说在t/k/s/tk之后是否还有其他辅音。第一个正则表达式允许这样做,只要不再有任何元音,因此它将把“fist”改为“fi:st”。如果单词必须以t/k/s/tk结尾,那么使用第二个正则表达式,它对“fist”没有任何作用。

如果您还没有弄明白,我建议尝试[python\u root]/tools/scripts/redemo.py这是一个很好的测试区域。

如果您还没有弄明白,我建议尝试[python\u root]/tools/scripts/redemo.py这是一个不错的测试区域。

替换正则表达式的另一个例子:

re.sub("(?<=[aeiou])(?=(?:t|k|s|tk)$)", ":", "orchestras")

re.sub((?对替换正则表达式的另一种理解:

re.sub("(?<=[aeiou])(?=(?:t|k|s|tk)$)", ":", "orchestras")

re.sub(“(?虽然我没有答案,但我对它的实际应用很好奇。虽然我没有答案,但我对它的实际应用很好奇。