Javascript 正则表达式-匹配包含2个或更多2个字母元音序列的单词
我想知道如何匹配包含2个或更多2个字母元音序列的单词(使用javascript版本的regex)(例如visionproof,steamier,preequip) 目前我正在学习正则表达式,这就是我目前掌握的(它只匹配包含两个字母元音序列的单词),也是我一直坚持的地方:Javascript 正则表达式-匹配包含2个或更多2个字母元音序列的单词,javascript,regex,Javascript,Regex,我想知道如何匹配包含2个或更多2个字母元音序列的单词(使用javascript版本的regex)(例如visionproof,steamier,preequip) 目前我正在学习正则表达式,这就是我目前掌握的(它只匹配包含两个字母元音序列的单词),也是我一直坚持的地方: 您需要将整个单词分组 您可能希望确保不要捕捉元音组 您至少需要2个字母,因此需要{2,} 您将需要(?:[aeiou]{2,})部分-两次,因为您希望不止一次地捕获它 re=/(\w*(?:[aeiou]{2,})\w*(
{2,}
(?:[aeiou]{2,})
部分-两次,因为您希望不止一次地捕获它re=/(\w*(?:[aeiou]{2,})\w*(?:[aeiou]{2,})\w*)/g
str='包含2个或更多字母序列和一些三重视觉的单词,如:前进、前进、前进'
每当我想测试不同的正则表达式时,我都会使用console.log(str.match(re))
。这是我想出的一个,我相信它能满足你的需求
var text=“visionproof vision-proof-proof-vision-proof-Three元音工作太排队”,
regex=/\w*[aeiou]{2}\w*[aeiou]{2}\w*/ig;
console.log(text.match(regex))代码>
试试这个。看演示
下面的正则表达式可用于获取2个或更多连续元音序列
(\w*[aeiou]{2}\w*){2,}
{2} 连续两个元音
和{2,}对于2个或更多的序列只需使用。您的参数是多余的,因为如果您从正则表达式中删除所有(?:
、(
)和)
的实例,它仍然会产生相同的输出:re=/\w*[aeiou]{2,}\w*[aeiou]{2,}\w*/g
您好,谢谢您的帮助和额外的提示或sssiiiisss:).这是不正确的。。。。它比一个词匹配得多。谢谢你的帮助,我认为这应该足够了,即使一些单词中有数字(极不可能)可能匹配。还有一个非常透彻的解释和链接,干杯:)。如果您想排除数字,可以用[a-z]替换出现的\w。从@vks到regex的更改使得它只与混乱中的单词匹配。如果您根本不想让它找到那个词,请在开头和结尾加上\b。
\b\w*[aeiou]{2}\w*[aeiou]{2}\w*\b
(\w*[aeiou]{2}\w*){2,}