2.0.0 • Published 1 year ago

parse-pairs v2.0.0

Weekly downloads
548
License
ISC
Repository
github
Last release
1 year ago

parse-pairs

Package Version License PackagePhobia Node compatibility

Parse key-value pairs

Install

Installation of the npm package:

> npm install --save parse-pairs

Usage

import { parsePairs } from "parse-pairs";

parsePairs('Batman="Bruce Wayne" "Wonder Woman"="Diana Prince" # comment');
// {
//   Batman: 'Bruce Wayne',
//   'Wonder Woman': 'Diana Prince'
// }
  • both keys and values can be quoted
  • single and double quotes are supported
  • white spaces around pairs are ignored
  • no escape sequences, feel free to open an issue or PR if necessary
  • single line comments starting with # are ignored

Custom parser

For advanced needs, you can create a custom parser.

import { createParser } from 'parse-pairs'

const parse = createParser({
  keyTransform: lodash.cameCase,
  valueTransform: (value, key) => lodash.startCase(value.toLowerCase())
})

parse('BATMAN="BRUCE WAYNE" "WONDER WOMAN"="DIANA PRINCE"')
{
  batman: 'Bruce Wayne',
  wonderWoman: 'Diana Prince'
}

Contributions

Contributions are very welcomed, either on the documentation or on the code.

You may:

  • report any issue you've encountered;
  • fork and create a pull request.

License

ISC © Julien Fontanet