代码之家  ›  专栏  ›  技术社区  ›  Max Lester

将纯文本值的行加载到字符串数组中

  •  -1
  • Max Lester  · 技术社区  · 6 年前

    我的数据行如下所示:

    +1
    -1
    +10
    -56
    

    如何将这些加载到如下所示的javascript数组中:

    ["+1","-1","+10","-56"]
    

    谢谢。

    2 回复  |  直到 6 年前
        1
  •  0
  •   Code Maniac    6 年前

    你呢 split()

    因为每个匹配项都用空格分隔,所以您可以简单地按空格字符将其拆分。

    let str =  "+1 -1 +10 -56"
    let op = str.split(' ');
    console.log(op);

    你也可以用regex来做。但在这种情况下不要使用regex。只是为了向您展示我添加正则表达式解决方案的更多方法。

    let str =  "+1 -1 +10 -56"
    let op = str.match(/[^ ]+/g);
    console.log(op);
        2
  •  -1
  •   ic3b3rg    6 年前

    你想在你的应用程序中加载一个文本文件吗?

    function readSingleFile(evt) {
      const f = evt.target.files[0];
      if (f) {
        const r = new FileReader();
        r.onload = e => { 
          const contents = e.target.result;
          console.log(contents.split('\n'));
        }
        r.readAsText(f);
      } else {
        alert("Failed to load file");
      }
    }
    
    document.getElementById('fileinput').addEventListener('change', readSingleFile, false);
    <input type="file" id="fileinput" />