javascript - 拆分后如何从数组中删除两个连续的双引号
问题描述
我有一个要求,我将从用户那里获得输入。他可以进入
"features1,feature2",feature3,"feature4"
像这样的东西。我正在使用这个
let arr: any = message.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/)
拆分字符串,我得到的结果就像
[""feature1,feature2"","feature3",""feature4""]
但我想要这样的结果
["feature1,feature2","feature3","feature4"]
解决方案
我不认为您要实现的目标只能使用split
函数。
拆分后,循环错误并替换"
为 ``(空)。
const message = `"features1,feature2",feature3,"feature4"`;
let arr = message.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);
arr = arr.map(el=>el.replace(/"/g,''));
console.log(arr);
推荐阅读
- java - flowable integration break jhipster maven 集成测试
- r - 如何在同一函数中使用 ifelse / lag / mutate 替换值和单词?
- amazon-web-services - AWS 现场实例/重启更快
- javascript - 为什么 Vue.js 模板不能交互它的脚本?
- python - Python模块化编程中导入模块的正确方法是什么?
- ssl - 我的第三方 SSL 无法在主域 GoDaddy 上运行
- java - 在解析“-fx-pref-width”的查找时无法解析“USE_COMPUTED_SIZE”
- types - 为什么 Rust 有一个“从不”的原始类型?
- javascript - 如何为以下代码行修复 Es-lint “no-return-assign”
- jquery - 未捕获的 ReferenceError:jQuery 未在电子中定义