Parse string into array of string elements.
"[ hello, world, [ 1, [2, [ 3 ]]]]" :arrow_right: [ "hello", "world", [ "1", [ "2", [ "3" ]]]]
npm i --save string-array
const stringArray = require("string-array");
const r1 = stringArray.parse("[]");
// r1 === { prefix: "", array: [], remain: "" }
const r2 = stringArray.parse("test[1,2,3]");
// r2 === { prefix: "test", array: ["1","2","3"], remain: "" }
Elements are automatically treated as strings, so quotes ', " and backtick are taken as part of element.
All leading and trailing whitespaces are automatically trimed.
Can't have these characters in elements: , [ ]
stringArray.parse(""):stringArray.parse("[]"):{
prefix: "",
array: [],
remain: ""
}
stringArray.parse('test[1,2,"3"]'):{
prefix: "test",
array: ["1","2", '"3"'],
remain: ""
}
stringArray.parse("[hello, world, [ [ foo, bar ], 1, [ 2 ], 3 ] ] some other stuff [blah]"):{
prefix: "",
array: ["hello", "world", [ ["foo", "bar"], "1", ["2"], "3" ] ],
remain: "some other stuff [blah]"
}
More samples in test
stringArray.parse(str, noPrefix, noExtra)str - string array to be parsednoPrefix - if true, then do not check for a prefixnoExtra - if true, then do not allow trailing text following a complete array in strAssertionError("array missing [")
str doesn't start with [ and noPrefix is trueAssertionError("array missing ]")AssertionError("array has extra ]")AssertionError("extra data at end of array") - if noExtra is true and there are extra text following a complete array in strSee the full API reference for every function, option, and type.
Licensed under the Apache License, Version 2.0