我正在尝试编写一个匹配所有单词的正则表达式,以便唯一的元音是e,并且单词中只有三个e,我在python中写这个.我试着写作
(?= e){3}[^aiou]*
Run Code Online (Sandbox Code Playgroud)
但它不起作用.
你想要三个e,这样两者之间的东西就是非元音.你想要一个单词,即任何一方都有单词边界的东西.
因此:单词边界,零个或多个非元音,e,零个或多个非元音,e,零个或多个非元音,e,零个或多个非元音,以及单词边界.但是我们可以通过对重复模式进行分组来简化:一个词边界,三次:(零或多个非元音,一个e),零个或多个非元音和一个单词边界.
在正则表达式中说:\b(?:[^aeiou]*e){3}[^aeiou]*\b.