5

如何匹配包含每个元音的单词至少一次?

4

2 回答 2

4

这取决于你所说的“元音”是什么意思——就此而言,你所说的“单词”也是什么意思——但正常的方式是这样的:

(?xsi)
(?= .* a)
(?= .* e)
(?= .* i)
(?= .* o)
(?= .* u)
(?= .* y)

但你不想那样做。您想将逻辑连接放在适当的编程语言中,而不是正则表达式中,这会导致这样的事情(忽略大小写问题):

/a/ && /e/ && /i/ && /o/ && /u/ && /y/

什么是元音?

请注意,整个“元音”问题非常荒谬,因为任何连续音都可以表现得像元音,即使它看起来不像元音。这意味着一些看起来不像元音的字母是。另外,有时字母看起来像元音,但不是。

  1. 例如,spsst , little中的第二个lacre中的rnth中的n都充当元音。另外还有著名的单词cwm,来自威尔士语,其中w是元音。

  2. 此外,Mike 中的e不是元音,而i有一个双元音(两个元音融合)。

  3. 此外,虽然天空中的y是元音,但黄色中的y不是元音。

  4. 你必须弄清楚你认为在诸如liespeak甚至queue之类的词中有多少个元音。

  5. 最后,如果您有变音符号,您必须决定是否将它们单独计算。eéèê只是一个元音还是四个?

于 2012-04-25T21:42:30.570 回答
2

这个怎么样

\s* (?= \S* a)  (?= \S* e)  (?= \S* i)  (?= \S* o)  (?= \S* u)  (?= \S* y) (\S*)
于 2012-04-25T22:30:20.703 回答