Javascript拆分和填充字符串
我有一个字符串:Javascript拆分和填充字符串,javascript,Javascript,我有一个字符串: 比萨饼(食物)、橙子(水果)、三明治(食物)、生菜(蔬菜)、苹果(水果) ,汉堡(食物) 我想将字符串填充为: 食物:比萨饼、三明治、汉堡 水果:桔子,苹果 蔬菜:莴苣 硬核 var str = "Pizza(food), Orange(fruit), Sandwich(food), lettuce(vegetable), Apple(fruit) ,Burger(food)"; var obj = str.split(',').reduce(function(acc, to
比萨饼(食物)、橙子(水果)、三明治(食物)、生菜(蔬菜)、苹果(水果)
,汉堡(食物)
我想将字符串填充为:
食物:比萨饼、三明治、汉堡
水果:桔子,苹果
蔬菜:莴苣
硬核
var str = "Pizza(food), Orange(fruit), Sandwich(food), lettuce(vegetable), Apple(fruit) ,Burger(food)";
var obj = str.split(',').reduce(function(acc, token){
token = token.trim().split(/\(|\)/).filter(Boolean);
return (acc[token[1]]||(acc[token[1]] = [])).push(token[0]), acc;
}, {});
var newStr = Object.keys(obj).map(function(key){
return key + ': ' + obj[key].join(', ');
}).join('\n');
更核心的:
var s = "Pizza(food), Orange(fruit), Sandwich(food), lettuce(vegetable), Apple(fruit) ,Burger(food)";
var result = s.split(",");
console.log(result);
var s1 = "food : ";
var s2 = "fruit : ";
var s3 = "vegetable : ";
for (var i = 0; i < result.length; i++){
var item = result[i].replace(/\(/,"-").replace(/\)/,"").split("-");
switch(item[1]){
case "food":
s1 += item[0] + " ";
break;
case "fruit":
s2 += item[0] + " ";
break;
case "vegetable":
s3 += item[0] + " ";
break;
}
}
console.log(s1+"\n"+s2+"\n"+s3);
var s=“比萨饼(食品)、橙子(水果)、三明治(食品)、生菜(蔬菜)、苹果(水果)、汉堡(食品)”;
var结果=s.split(“,”);
控制台日志(结果);
var s1=“食品:”;
var s2=“水果:”;
var s3=“蔬菜:”;
对于(变量i=0;i
那么,你还在等什么?吉时?谢谢你的帮助!它在调试模式(f5)下工作正常。但是,在我将其发布到本地服务器之后。这个功能不起作用。有什么想法吗?@0070不知道。您是否用函数包装了此代码?什么用作输入?你能在这里重现这个问题吗?您使用的浏览器是什么(如您所见,此代码使用了一些ES5功能)?