3.1.8 • Published 4 years ago

parenthesis v3.1.8

Weekly downloads
97,120
License
MIT
Repository
github
Last release
4 years ago

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.

OptionDefaultMeaning
brackets['{}', '[]', '()']Single brackets string or list of strings to detect brackets. Can be repeating brackets eg. "" or ''.
escape'___'Escape prefix for flat references.
flatfalseReturn 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

3.1.8

4 years ago

3.1.7

6 years ago

3.1.6

7 years ago

3.1.5

7 years ago

3.1.4

7 years ago

3.1.3

10 years ago

3.1.2

10 years ago

3.1.1

10 years ago

3.1.0

10 years ago

3.0.0

10 years ago

2.0.0

10 years ago

1.3.0

10 years ago

1.2.4

10 years ago

1.2.3

11 years ago

1.2.2

11 years ago

1.2.1

11 years ago

1.2.0

11 years ago

1.1.0

11 years ago

1.0.0

11 years ago