Javascript:从给定字符串Ex:I/p:aabbbccggg o/p:bbb中查找第二长的子字符串
Javascript:从给定字符串(标题中添加了输入和输出示例)中查找第二长的子字符串Javascript:从给定字符串Ex:I/p:aabbbccggg o/p:bbb中查找第二长的子字符串,javascript,Javascript,Javascript:从给定字符串(标题中添加了输入和输出示例)中查找第二长的子字符串 使用RegExp 根据字符串长度对它们进行排序 选择第二项 函数getSecondSubstring(str){ 让regex=newregexp(str.toLowerCase().split(“”).filter((x,i,a)=>a.indexOf(x)==i.join(“+|”)+“+”,“ig”) 让substrgroups=str.match(regex); 子RGroups.sort((a,b
RegExp
log(getSecondSubstring(“aabbbccggg”)代码>如果您不介意使用正则表达式:
function yourFunctionName(input){
let grp = input.split(/(?<=(.))(?!\1|$)/ig);
grp.sort((a,b)=> b.length-a.length);
if(grp.length <= 0){
return null;
}
else if (grp.length == 1){
return grp[0];
}
else{
grp.sort(function(a, b){
return b.length - a.length;
});
return grp[1];
}
}
console.log(yourFunctionName("ööööööðððób"));
函数yourFunctionName(输入){
设grp=input.split(/(?b.length-a.length);
if(grp.length)你试过什么?你有什么建议吗?请帮助我解决这个问题。我不知道如何解决这个问题,谢谢。这对我帮助很大。unicode怎么样…例如,öööööðððb
?@LeonardoSeccia,使它成为通用的。适用于所有类型的字符。为什么否决投票?
function yourFunctionName(input){
input = input.toLowerCase();
let counter = [];
let prevChar;
let countIndex = 0;
for (let index = 0, length = input.length; index < length; index++) {
const element = input[index];
if(prevChar){
if(prevChar != element){
countIndex++;
counter[countIndex] = "";
}
}
else{
counter[countIndex] = "";
}
counter[countIndex] += element;
prevChar = element;
}
if(counter.length <= 0){
return null;
}
else if (counter.length == 1){
return counter[0];
}
else{
counter.sort(function(a, b){
return b.length - a.length;
});
return counter[1];
}
}
console.log(yourFunctionName("aaaaabbbbccdd"));