在单词和行尾之间获取文本

时间:2016-01-22 13:58:47

标签: javascript

在JavaScript中,我有一个表单字符串:

var str = "key0 value0
key1 value1
key2 value2
key3 value3"

对于给定的密钥,我想获取相应值的文本。 因此,对于key1,我想获得value1

如何从字符串中提取该文本?

1 个答案:

答案 0 :(得分:3)

我会将你的文字解析成地图:

myProgram --input <(cat file1.txt file2.txt)

然后启用简单访问:

var map = str.split('\n').reduce(function(m,line){
   var tokens = line.split(' ');
   m.set(tokens[0], tokens[1]);
   return m;
}, new Map);

var myValue = map.get('key1');

如果您已经切换到ES2015,那么这是一个更甜的版本:

var str = "key0 value0\nkey1 value1\nkey2 value2\nkey3 value3";

    var map = str.split('\n').reduce(function(m,l){
       var tokens = l.split(' ');
       return m.set(tokens[0], tokens[1]);
    }, new Map);


    var myValue = map.get('key1');

document.body.textContent = ("key1 => "+ myValue);