javascript辅音为小写

时间:2016-09-30 16:54:38

标签: javascript lowercase

大家好我认为下面的代码应该可行,但它没有,我不知道为什么,有什么建议吗?

它接收带有数字和字母的数组,并使用小写辅音返回它。数字保持不变 示例:consonantstoLowerCase([1,5,7,'a','J','p','E'])返回[1,5,7,'a','j',p,'E']

function consonantstoLowerCase( array )
{

	var result = array.toString().replace(/[bcdfghjklmnpqrstvwxyz]/g, function (char) 
	{
	    return char.toLowerCase();
	});

	console.log(result)
	
}

输出:

consonantstoLowerCase([1,5,7,'a','J','p','E']) => 1,5,7,a,J,p,E

提前致谢!

3 个答案:

答案 0 :(得分:0)



consonantstoLowerCase([1,5,7,'a','J','p','E','k','m','I'])
function consonantstoLowerCase( array )
{

	var result = array.toString().replace(/[bcdfghjklmnpqrstvwxyz]/ig, function (char) 
	{
	    return char.toLowerCase();
	});

	console.log(result)
	
}




答案 1 :(得分:0)

要获取所需的数组,只需映射值,检查它们是否与辅音匹配,如果匹配,则返回toLowerCase()。 (还要注意匹配器上的i修饰符 - 现在我们也要检查大写字母,就像你想要的那样......)。

啊,因为这是写的,我检查不匹配的人声和数字......

var input = [1,5,7,'a','J','p','E'];

function consonantToLowerCase(arr) {
  var vocals = /[aeiou0-9]/ig;  
  return arr.map(function(e) {
    if (! e.toString().match(vocals)) return e.toLowerCase();
    return e;
  });  
}

console.log(consonantToLowerCase(input));

答案 2 :(得分:0)

这应该这样做:

var arr = [1,5,7,'a','J','p','E'];
arr = arr.map(e => /[BCDFGHJKLMNPQRSTVWXYZ]/g.test(e) ? e.toLowerCase() : e);
console.log(arr);

在回应你的评论时,要将辅音改为小写和元音改为大写,你可以这样做:

var arr = [1,5,7,'a','J','p','E'];
arr = arr.map(function(e){
    e = /[BCDFGHJKLMNPQRSTVWXYZ]/g.test(e) ? e.toLowerCase() : e;
    e = /[aeiou]/g.test(e) ? e.toUpperCase() : e;
    return e;
});
console.log(arr);