JavaScript中如何为字符串内的每个子串添加双引号?
可以实现,以下是几种JavaScript解决方案
方法一:分割拼接法
先把原字符串按, 分割成独立子串的数组,给每个子串前后加上双引号,再重新拼接成目标格式的字符串:
var st = "asv_abc1_100x101, asv_def2_100x102, asv_ghi1_100x103, asv_jkl4_100x104"; // 处理子串 var processedStr = st.split(', ').map(item => `"${item}"`).join(', '); // 输出最终代码格式的字符串(注意外层双引号内的双引号需要转义) console.log(`var st = "${processedStr}";`);
执行后会输出:
var st = "\"asv_abc1_100x101\", \"asv_def2_100x102\", \"asv_ghi1_100x103\", \"asv_jkl4_100x104\"";
这和你需求的目标字符串效果一致(JavaScript中字符串内的双引号必须用\"转义,你给出的目标写法里的""是转义后的显示形式)。
方法二:正则表达式替换法
用正则匹配所有非逗号、非空格的连续字符(也就是每个子串),直接替换为带双引号的形式:
var st = "asv_abc1_100x101, asv_def2_100x102, asv_ghi1_100x103, asv_jkl4_100x104"; // 正则替换每个子串 var processedStr = st.replace(/([^, ]+)/g, '"$1"'); // 输出结果 console.log(`var st = "${processedStr}";`);
这种方法更简洁,同样能得到符合要求的结果。
内容的提问来源于stack exchange,提问作者Mukul Kumar
相关产品推荐
相关产品推荐

