在javascript中过滤数组中的重复字符
如何从数组字符串中筛选2个字符 例如,我只想显示那些有两个“a”的 结果将是每个字符串中的“Banana”而不是“a”在javascript中过滤数组中的重复字符,javascript,arrays,filter,Javascript,Arrays,Filter,如何从数组字符串中筛选2个字符 例如,我只想显示那些有两个“a”的 结果将是每个字符串中的“Banana”而不是“a” constfruits=[“苹果”、“杏子”、“香蕉”、“西瓜”、“草莓”、“皮”]; 让filteredFruits=水果。过滤器(水果=>{ fruit.toLowerCase()包括('a'); }) console.log(filteredFruits)可以使用正则表达式搜索字母,如果不为null,则使用长度 const 水果=[“苹果”、“杏子”、“香蕉”、“西瓜
constfruits=[“苹果”、“杏子”、“香蕉”、“西瓜”、“草莓”、“皮”];
让filteredFruits=水果。过滤器(水果=>{
fruit.toLowerCase()包括('a');
})
console.log(filteredFruits)代码>可以使用正则表达式搜索字母,如果不为null,则使用长度
const
水果=[“苹果”、“杏子”、“香蕉”、“西瓜”、“草莓”、“皮”],
filteredFruits=fruits.filter(fruit=>fruit.match(/a/gi)?.length>1)
console.log(filteredFruits)代码>
我只想展示那些有两个“a”的
根据您的要求,Banana
中字符a
的数量等于3
。所以它不应该被显示出来。让我们试着过滤p
char
return countChar(charArray, char) == 2; // Adjust condition here
根据上述条件,您可以根据需要进行调整,例如:
> 1 // when you want to filter string having greater than 1 char
或
constfruits=[“苹果”、“杏子”、“香蕉”、“西瓜”、“草莓”、“皮”];
const countChar=(charArray,char)=>charArray.reduce((acc,curr)=>(acc=acc+(curr==char?1:0),acc),0);
让filteredFruits=(char)=>fruits.filter(fruits=>{
const charArray=fruit.toLowerCase().split(“”);
return countChar(charArray,char)==2;//在此调整条件
})
log(filteredFruits('a'));
console.log(filteredFruits('p'))
首先,您需要返回filter函数内部以获得结果。所以(fruit=>{return….})来处理这个问题。这能回答你的问题吗?如果你需要帮助,请告诉我@法赫德·贾维德
>= 2 // when you want to filter string having greater or euqal 2 char