python - 正则表达式匹配所有以三个 'e' 结尾并包含的单词

标签 python regex

我正在尝试编写一个正则表达式来匹配所有单词,以便唯一的元音是 e 并且单词中恰好有三个 e,我正在用 python 编写它。我试着写

(?= e){3}[^aiou]*

但是没用。

最佳答案

您需要三个 e,中间的部分由非元音字母组成。你想要一个词,即两边都有词边界的东西。

因此:一个单词边界,零个或多个非元音字母,一个 e,零个或多个非元音字母,一个 e,零个或多个非元音字母,一个 e,零个或多个非元音字母,以及一个单词边界.但是我们可以通过对重复模式进行分组来简化它:一个单词边界,三次:(零个或多个非元音字母,一个 e),零个或多个非元音字母,以及一个单词边界。

在正则表达式中:\b(?:[^aeiou]*e){3}[^aeiou]*\b

关于python - 正则表达式匹配所有以三个 'e' 结尾并包含的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4338181/

相关文章:

python - 在 Python 中使用表达式索引进行切片的推荐空格是多少?

python - 从正则表达式中提取文本

regex - SAS 中的正则表达式

regex - 使用什么 Vim 命令删除文件每一行某个字符后的所有文本?

python - 在 Python 数组的索引之间搜索值

python - 从 python 脚本调用时 vi 中没有颜色

python - 我安装了 python 3.7.4 但无法安装 dolfin 包

python - 检查 numpy 数组是否按字典顺序排序

javascript - 如何使用 JavaScript Regex 提取字符串?

regex - apache虚拟主机定义与正则表达式