gpt4 book ai didi

javascript - 如何在 switch 语句中的字符串上使用正则表达式?

转载 作者:行者123 更新时间:2023-11-28 18:08:48 28 4
gpt4 key购买 nike

我有一个 if else 语句来匹配带有元音和辅音的字符串,效果很好。我想用 switch 语句来整理它,但是使用 match() 不起作用。我错过了什么?

if else//返回元音:1,辅音:3

function getCount(words) {
var v,
c;
if (words === '' || words === ' ') {
v=0;
c=0;
} else if(words.match(/[aeiou]/gi)) {
v = words.match(/[aeiou]/gi).length;
c = words.replace(/\s|\W/g, '').split("").length - v;
} else {
v = 0;
c = 0;
}
return {
vowels: v,
consonants: c
};
}

getCount('test');

switch//返回元音:0,辅音:0

function getCount(words) {
var v,
c;
switch(words) {
case words.match(/[aeiou]/gi):
v = words.match(/[aeiou]/gi).length;
c = words.replace(/\s|\W/g, '').split("").length - v;
console.log("true");
break;
case '':
case ' ':
v = 0;
c = 0;
break;
default:
v = 0;
c = 0;
}
return {
vowels: v,
consonants: c
};
}

getCount('test');

最佳答案

// Code goes here

function getCount(words) {
var v,
c;
switch(true) {
case ( words.match(/[aeiou]/gi) !=null ):
v = words.match(/[aeiou]/gi).length;
c = words.replace(/\s|\W/g, '').split("").length - v;
console.log("true");
break;
case (words==''):
case (words==' '):
v = 0;
c = 0;
break;
default:
v = 0;
c = 0;
}
return {
vowels: v,
consonants: c
};
}

console.log(getCount('test'));

关于javascript - 如何在 switch 语句中的字符串上使用正则表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42071576/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com