0.6.0 • Published 11 months ago

@jondotsoy/splitg v0.6.0

Weekly downloads
-
License
-
Repository
github
Last release
11 months ago

splitg

Splits a string into an array of strings, handling spaces and quotes correctly.

splitg(`abc def g`); // => [`abc`, `def`, `g`]
splitg(`run -c "command to run"`); // => [`run`, `-c`, `"command to run"`]
splitg(`this is a json { "name": "ok" } with a property name`); // => [`this`, `is`, `a`, `json`, `{ "name": "ok" }`, `with`, `a`, `property`, `name`]

// Complex sample:
splitg(
  `{ "name": "freed" }\n[ "name", "freed" ]\n[ [ "name", "freed" ],\n[ "age", 44 ] ]`,
  "\n",
);
// => [
//   '{ "name": "freed" }',
//   '[ "name", "freed" ]',
//   '[ [ "name", "freed" ],\n[ "age", 44 ] ]',
// ]

Try it here https://jondotsoy.github.io/splitg/

Usage

Install the package @jondotsoy/splitg:

npm i @jondotsoy/splitg

Custom Delimiters

You can specify a custom delimiter to use when splitting the string. This allows you to split strings based on characters other than spaces. The delimiter can be a single character or a string. Quoted strings are still handled correctly, even if they contain the delimiter.

If you pass a delimiter, the function will split the string using that delimiter instead of spaces.

Example:

splitg(`abc~def~g`, "~"); // => [`abc`, `def`, `g`]

Custom Brackets

Example:

splitg(`abc <def ghi> [jkl mno]`, {
  brackets: [["<", ">"]],
}); // => [`abc`, `<def ghi>`, `[jkl`, `mno]`]

Multiple splitters

Example:

splitg(`abc~def ghi jkl~mno`, {
  splitters: ["~", " "],
}); // => [`abc`, `def`, `ghi`, `jkl`, `mno]`]

License

This project is licensed under the MIT License - see the LICENSE file for details.

0.6.0

11 months ago

0.5.0

11 months ago

0.4.8

11 months ago

0.4.7

12 months ago

0.4.6

12 months ago

0.4.5

12 months ago

0.4.4

12 months ago

0.4.2

12 months ago

0.4.1

12 months ago

0.4.0

12 months ago

0.3.1

12 months ago

0.3.0

12 months ago