我正在尝试用Java编写一个正则表达式,它将匹配一个长度为n的单词,其中至少有x个元音。
到目前为止,我想出了以下内容:
// match words that are length 10 and have at least 2 vowels in them
(?=\w{10})(?:[^aeiou\W]*[aeiuo]){2}\w+
这似乎有效,但也匹配长度大于 10 的单词,即:
荒野 - 比赛
挥发 - 匹配
声纹 - 匹配(这应该是唯一的匹配)
我希望它可以强制执行 length=10 约束。我怀疑这可能与我在字符串长度中添加字母(元音)这一事实有关,但我不确定。任何帮助/指导将不胜感激。