Rk2*_*220 2 javascript string character duplicates
我在这里搞乱第一个问题:将重复的字符减少到所需的最小值,我正在寻找比我想出的更优雅的答案.它通过了测试,但很想知道其他解决方案.样本测试是:
reduceString('aaaabbbb', 2) 'aabb'
reduceString('xaaabbbb', 2) 'xaabb'
reduceString('aaaabbbb', 1) 'ab'
reduceString('aaxxxaabbbb', 2) 'aaxxaabb'
Run Code Online (Sandbox Code Playgroud)
和我的解决方案(通过这些测试):
reduceString = function(str, amount) {
var count = 0;
var result = '';
for (var i = 0; i < str.length; i++) {
if (str[i] === str[i+1]) {
count++;
if (count < amount) {
result += str[i];
}
} else {
count = 0;
result += str[i];
}
};
return result;
}
Run Code Online (Sandbox Code Playgroud)
小智 5
只需使用正则表达式.
var reduceString = function (str, amount) {
var re = new RegExp("(.)(?=\\1{" + amount + "})","g");
return str.replace(re, "");
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1572 次 |
| 最近记录: |