Regex 如何至少一次匹配包含每个元音的单词?
如何至少一次匹配包含每个元音的单词?这取决于你所说的“元音”是什么意思——就这一点而言,你所说的“单词”也是什么意思——但通常的方式是这样的:Regex 如何至少一次匹配包含每个元音的单词?,regex,Regex,如何至少一次匹配包含每个元音的单词?这取决于你所说的“元音”是什么意思——就这一点而言,你所说的“单词”也是什么意思——但通常的方式是这样的: (?xsi) (?= .* a) (?= .* e) (?= .* i) (?= .* o) (?= .* u) (?= .* y) 但你不想那样做。您希望将逻辑连接放在编程语言中,而不是放在正则表达式中,这会导致类似的情况(忽略大小写问题): 元音是什么? 请注意,整个“元音”问题相当荒谬,因为任何连续体都可以像元音一样工作,即使它看起来不像元音。这
(?xsi)
(?= .* a)
(?= .* e)
(?= .* i)
(?= .* o)
(?= .* u)
(?= .* y)
但你不想那样做。您希望将逻辑连接放在编程语言中,而不是放在正则表达式中,这会导致类似的情况(忽略大小写问题):
元音是什么?
请注意,整个“元音”问题相当荒谬,因为任何连续体都可以像元音一样工作,即使它看起来不像元音。这意味着一些看起来不像元音的字母是。此外,有时字母看起来像元音,但不是
\s* (?= \S* a) (?= \S* e) (?= \S* i) (?= \S* o) (?= \S* u) (?= \S* y) (\S*)
我想他在寻找像“abstemious”这样包含所有元音的单词。我知道这不应该用正则表达式来完成,但我只是好奇。但是我不能让你的第一个例子起作用;o@JohnConnor然后一起运行第一个解决方案,不留空格。您可能没有运行
/x
。@tchrist什么是(?xsi)
?(JS抱怨这不是一个有效的团体,fwiw。)@broofa-有点令人震惊。我想你可以试试。你厌倦了单个角色了吗?ie<代码>(?x),(?s)
,(?i)
?支持哪种类型?回答我自己的问题:请参阅的“修饰符”部分@sin:看起来JS(至少在Chrome中)不支持修改器组。
\s* (?= \S* a) (?= \S* e) (?= \S* i) (?= \S* o) (?= \S* u) (?= \S* y) (\S*)