将逗号分隔的字符串拆分为单独的字符串
Split Comma Separated string into separate strings
我有一个使用JavaScript制作的文件,其中包含网站的本地存储的内容。它已被字符串化,(现在)用"|"分隔。我想把每个"|"后面的这个字符串拆分成一个单独的字符串,这样我就可以1乘1将每个变量及其值输入到本地存储中,因为据我所知,你不能一次设置多个项。以下是我到目前为止所得到的,但经过研究,我还没有找到除了放入数组之外的解决方案。。。
<input type="file" id="file" accept=".io">
<div id="contents"></div>
<script>
var X;
document.getElementById('file').addEventListener('change',
function () {
var fr = new FileReader();
fr.onload = function () {
document.getElementById('contents').textContent =
this.result.replace(/,/g,"|").replace(/:/g,",").slice(1,-1);
};
fr.readAsText(this.files[0]);
}
);
localStorage.setItem("test","1223asd3423");
</script>
我有一种感觉,我正在做的是一种冗长而低效的导出/导入本地存储数据的方法,而且有某种解决方案包含for
循环和其他形式的JavaScript的混合,我还没有成为新手。
下面是一个如何格式化原始文件的示例,仅供参考:
Settings.io: (.io file extension, not website domain)
{"AB12_Rubicon":"37","AB9":"99","backgroundColor":"#2e2e2e",....}
新字符串
"AB12_Rubicon","37"|"AB9","99"|"backgroundColor","#2e2e2e"|....
所需结果示例
Newstring1='"AB12_Rubicon","37"';Newstring2='"AB9","99"';
我确信我会编辑这个答案,但
如果你得到的是这个输入
{"AB12_Rubicon":"37","AB9":"99","backgroundColor":"#2e2e2e",....}
那么它不是一个字符串——它是JSON——你不必拆分它来获得值。你必须循环通过它。
首先,您需要检查JSON是否已字符串化,如果是,则需要将其转换回JSON
要检查,只需使用console.log(typeof input);
如果是字符串,请使用JSON.parse(input);
现在假设你已经把物体的情况全部整理好了
这是提取值的代码
for (var key in input){
var current_key = key; // will get value before the ":"
var current_value = input[key]; // value after ":"
// do what ever you need
}
编辑:
正是因为问题标题太模糊了,有些人可能会遇到这个问题,看起来像是字符串的减法运算。myvariable_with_string.split(',')
相关文章:
- 如何引用C#;一个单独的Javascript文件中的字符串
- 将逗号分隔的字符串拆分为单独的字符串
- 如何将输入的文本字符串提醒到单独的行中
- 将这些隐藏输入的值合并到单独的隐藏输入中的 JSON 格式字符串中
- 如何在 javascript 中使用正则表达式进行单独的搜索字符串
- 在 JavaScript 中将单个字符串拆分为多个单独的变量
- 将 OR 拆分字符串数组转换为单独的数组组
- 在一个字符串中用括号替换两个单独的正则表达式
- 将表格导出为CSV字符串格式问题到单独的单元格中
- php或javascript正则表达式-将第一个字母和剩余字符串作为两个单独的值返回
- 用javascript将单独的地址字符串序列化为一个
- 从AJAX POST返回一个字符串并传递到一个单独的HTML文件中
- 正则表达式:在空格上拆分一个字符串 + 每个要单独包含的特殊字符
- 正在将css框阴影字符串解析为单独的值
- 正则表达式将字符串拆分为单独的键
- 如何将参数的字符串列表传递给函数,并将它们作为单独的参数分配
- 如何将字符串拆分为单独的行
- 如何在不拆分的情况下获得单独索引中的字符串数组
- 如何在 JavaScript 中将具有多个名称/值对的 JSON 字符串数组保存在单独的数组中
- 如何使用正则表达式在字符串中返回 2 个单独的 {{..}} 块