parenthesis
Parse parentheses from a string
Last updated 6 years ago by dfcreative .
MIT · Repository · Bugs · Original npm
$ cnpm install parenthesis 
SYNC missed versions from official npm registry.

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

Current Tags

  • 3.1.7                                ...           latest (6 years ago)

1 Versions

  • 3.1.7                                ...           6 years ago
Maintainers (2)
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dependencies (0)
None
Dev Dependencies (1)
Dependents (0)
None

Copyright 2013 - present © cnpmjs.org