这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 +/);
答案 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 + '}');