Nunjucks Powers Mozilla

    rbm-keyvalue-parser

    0.1.0 • Public • Published

    rbm-keyvalue-parser

    Easy string parser of keys/values

    Build Status

    Usage:

    var Parser = require('rbm-keyvalue-parser');
     
    var ps = new Parser('your text');
    console.log(ps.getParts());
    // output
    var res = [ 
      ['your', undefined], 
      ['text', undefined] 
    ]
     

    You also have some other methods you can use

    var ps = new Parser('your text');
    ps.next() // ['your', undefined] and we slurp the entry
    ps.next() // ['text', undefined] we get the next one
     
    var ps = new Parser('your text');
    ps.peek() // ['your', undefined]; we don't slurp the entry
    ps.next() // ['your', undefined]; we get the same

    The module parses key/value with multiple keys and values. So you can do

    var ps = new Parser('foo,bar="your text",bar');
    console.log(ps.getParts());
    // output
    var res = [ 
      ['foo', ['your text', 'bar'] ], 
      ['bar', ['your text', 'bar'] 
    ]
     

    Other parses

    //Little brown="and yellow" fox=1 jumps over=lazy dog
    var res = [ 
      [ 'Little', undefined ],
      [ 'brown', 'and yellow' ],
      [ 'fox', '1' ],
      [ 'jumps', undefined ],
      [ 'over', 'lazy' ],
      [ 'dog', undefined ] 
    ]
      
    //foo list="foo bar","bar bar" fox="bar,bar" fox=1 foo=bar,foo fox="bar bar",foo fox=foo,"bar bar" foo,bar foo,bar="test test",bar
    var res = [ 
      [ 'foo', undefined ],
      [ 'list', [ 'foo bar', 'bar bar' ] ],
      [ 'fox', 'bar,bar' ],
      [ 'fox', '1' ],
      [ 'foo', [ 'bar', 'foo' ] ],
      [ 'fox', [ 'bar bar', 'foo' ] ],
      [ 'fox', [ 'foo', 'bar bar' ] ],
      [ 'foo', undefined ],
      [ 'bar', undefined ],
      [ 'foo', [ 'test test', 'bar' ] ],
      [ 'bar', [ 'test test', 'bar' ] ] 
    ]
     
    // "foo bar" bar,"foo bar"=1 bar,"foo bar"=bar,"foo bar"
    var res = [
      ['foo bar', undefined],
      ['bar', '1'],
      ['foo bar', '1'],
      ['bar', ['bar', 'foo bar']],
      ['foo bar', ['bar', 'foo bar']]
    ]

    Keywords

    none

    Install

    npm i rbm-keyvalue-parser

    DownloadsWeekly Downloads

    1

    Version

    0.1.0

    License

    MIT

    Last publish

    Collaborators

    • cellarlabs