Package Exports
- string-process-comma-separated
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (string-process-comma-separated) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
string-process-comma-separated
Extracts chunks from possibly comma or whatever-separated string
Install
npm i string-process-comma-separated
Quick Take
import { strict as assert } from "assert";
import { processCommaSep } from "string-process-comma-separated";
const gatheredChunks = [];
const gatheredErrors = [];
const rawnbsp = "\u00a0";
// it's a callback-interface:
processCommaSep(`<FRAMESET rows=" ,,\t50% ,${rawnbsp} 50% ,\t\t,">`, {
from: 16, // <- beginning of the attribute's value
to: 35, // <- ending of the attribute's value
separator: ",",
cb: (idxFrom, idxTo) => {
gatheredChunks.push([idxFrom, idxTo]);
},
errCb: (ranges, message) => {
gatheredErrors.push({ ranges, message });
},
});
assert.deepEqual(gatheredChunks, [
[20, 23],
[27, 30],
]);
assert.deepEqual(gatheredErrors, [
{ ranges: [[16, 17]], message: "Remove whitespace." },
{ ranges: [[17, 18]], message: "Remove separator." },
{ ranges: [[18, 19]], message: "Remove separator." },
{ ranges: [[19, 20]], message: "Remove whitespace." },
{ ranges: [[23, 24]], message: "Remove whitespace." },
{ ranges: [[25, 27]], message: "Remove whitespace." },
{ ranges: [[30, 31]], message: "Remove whitespace." },
{ ranges: [[32, 34]], message: "Remove whitespace." },
{ ranges: [[31, 32]], message: "Remove separator." },
{ ranges: [[34, 35]], message: "Remove separator." },
]);
Documentation
Please visit codsen.com for a full description of the API and examples.
Licence
MIT License
Copyright (c) 2010-2021 Roy Revelt and other contributors