匹配多个辅音 - 元音序列

时间:2017-01-04 04:00:33

标签: javascript regex

RegExp给我一个辅音,然后是元音,简历。我想重复一遍这么多次,所以我得到的东西就像CVCVCV,没有超长的正则表达式。

var regEx1 = new RegExp(/\b[b-df-hj-np-tv-z][aeiou]/);

如何撰写此内容,以便[b-df-hj-np-tv-z][aeiou]成为变量并插入new RegExp

我尝试了这个,但它不起作用:

  var consonant = "[b-df-hj-np-tv-z]";
  var vowel = "[aeiou]";
  var regEx1 = new RegExp(/\b + consonant + vowel +/);

1 个答案:

答案 0 :(得分:4)

通过使用分组和量词,您可以实现这一目标。

(x)匹配x并记住匹配。

x {n}其中n是正整数。恰好匹配前面项x的n次出现。

匹配3次:CVCVCV

var regEx1 = /\b([b-df-hj-np-tv-z][aeiou]){3}/;

匹配12次:CVCVCVCVCVCVCVCVCVCVCVCV

var regEx1 = /\b([b-df-hj-np-tv-z][aeiou]){12}/;

0次或更多次:(CVCVCVCV ......)

var regEx1 = /\b([b-df-hj-np-tv-z][aeiou])*/;

更多信息: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp

更新:

根据您的评论,这是您要找的内容吗?

var count = 3;
var consonant = '[b-df-hj-np-tv-z]';
var vowel = '[aeiou]';
var regEx1 = new RegEx('\\b(' + consonant + vowel + '){' + count + '}');