Airthium / extract-json-from-string

Extract JSON/javascript objects from strings

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

extract-json-from-string

Extract JSON/javascript objects from strings

Installation

npm install --save extract-json-from-string

Summary

Extract random JSON and javascript objects from a longer string, e.g. "Expected { foo: 'bar' } to equal { foo: 'baz' }" (I'm looking at you jasmine 1.3). Also works with arrays.

Usage

Just pass the string into the one exported function and get a list of objects and arrays contained therein returned to you. If the string contains no valid objects or arrays (valid objects or arrays), you'll get an empty array back.

Node

const extract = require('extract-json-from-string')

let objects = extract('Expected { foo: "bar" } to equal { foo: "baz" }')
// [
//   { foo: 'bar' },
//   { foo: 'baz' }
// ]

Browser

let objects = window.extractJson(
  'Expected { foo: "bar" } to equal { foo: "baz" }'
)
// [
//   { foo: 'bar' },
//   { foo: 'baz' }
// ]

N.B.

For the time being, I've written a very naive implementation. There are lots of ways to break this (like stringified JSON or escaped quotes within the value of a property). Please report any issues, and I'll do my best to fix them and make it less naive.

Contributing

Please see the contribution guidelines.

About

Extract JSON/javascript objects from strings

License:MIT License


Languages

Language:TypeScript 94.5%Language:JavaScript 5.5%