Nuclear Pumpkin Mayhem

    parenthesis
    TypeScript icon, indicating that this package has built-in type declarations

    3.1.8 • Public • Published

    parenthesis Build Status

    Parse parentheses from a string, return folded arrays.

    npm install parenthesis

    var parse = require('parenthesis')
    
    // Parse into nested format
    parse('a(b[c{d}])')
    // ['a(', ['b[', ['c{', ['d'], '}'], ']'], ')']
    
    // Parse into flat format with cross-references
    parse('a(b[c{d}])', {
    	brackets: ['()'],
    	escape: '\\',
    	flat: true
    })
    // ['a(\\1)', 'b[c{d}]']
    
    
    // Stringify nested format
    parse.stringify(['a(', ['b[', ['c{', ['d'], '}'], ']'], ')'])
    // 'a(b[c{d}])'
    
    // Stringify flat format with cross-references
    parse.stringify(['a(\\1)', 'b[c{d}]'], {flat: true, escape: '\\'})
    // 'a(b[c{d}])'

    API

    tokens = paren.parse(string, brackets|opts?)

    Return array with tokens.

    Option Default Meaning
    brackets ['{}', '[]', '()'] Single brackets string or list of strings to detect brackets. Can be repeating brackets eg. "" or ''.
    escape '___' Escape prefix for flat references.
    flat false Return flat array instead of nested arrays.

    str = paren.stringify(tokens, {flat}?)

    Stringify tokens back. Pass {flat: true} flag for flat tokens array.

    Related

    License

    © 2018 Dmitry Yv. MIT License

    Install

    npm i parenthesis

    DownloadsWeekly Downloads

    170,113

    Version

    3.1.8

    License

    MIT

    Unpacked Size

    8.4 kB

    Total Files

    5

    Last publish

    Collaborators

    • dfcreative
    • dy