javascript - 取一个字符串,评估它并查找是否有一个数字并重复部分字符串该次数?
问题描述
我正在编写代码并遇到了这个问题,你有一个特定的字符串,它是这种形式:
d ae2 n s
现在我们必须以特定的方式对此进行解码,
用空格将其拆分为不同的部分,形成一个类似 ["d","ae2","n","s"] 的数组
评估数组的每个元素并找出其中是否有数字。
如果有数字,则重复该字符串的次数。
将其添加到数组中并继续。所以输出数组应该是
["d","ae","ae","n","s"]
我已经尝试了很多但一无所获
我之前使用过这段代码,但它以第二个字符串结尾:
var str = "d ae2 n s"
var res = str.split(" ");
alert(res.length);
for(var x = 0; x < res.length; x++ ){
var std = res[x];
var fun = checkNum(std);
if(fun === true){
var numbers = str.match(/\d+/g).map(Number);
var index = res.indexOf(std);
var result = std.replace(/[0-9]/g, '');
var res2 = result.repeat(numbers);
res[index] = res2;
}
else{
continue;
}
for(var i = 0; i < res.length; i++ ){
console.log(res[x]);
}
}
function checkNum(t){
return /\d/.test(t);
}
// I am a terible coder :/
预期输入:d ae2 ns
预期输出:["d","ae","ae","n","s"]
解决方案
推荐阅读
- bash - 如何通过循环遍历 TSV 将选项分配给下标?
- google-cloud-platform - 创建实例模板时的 Terraform GCP,获取源图像的相对路径时出错
- python-3.x - 如何更改python环境
- javascript - 避免 keyup 输入 ajax 调用的重复结果;杀死以前的ajax调用
- java - 外部化属性文件 - Widlfly & Struts 1.x
- oracle - 将 SQL 脚本作为 Windows 批处理文件运行
- c# - 拆分多个 linq include()
- android - 如何使用 Kotlin 从非活动类中查找 ListView?
- php - 如何处理内联 SVG 的重复 ID?
- angularjs - angularjs 1.7 选择下拉菜单显示了一个额外的选项值