string-process-comma-separated
v4.2.3
Published
Extracts chunks from possibly comma or whatever-separated string
Maintainers
Readme
Install
This package is pure ESM. If you're not ready yet, install an older version of this program, 2.1.0 (npm i [email protected]).
npm i string-process-comma-separatedQuick 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. If you’re looking for the Changelog, it’s here.
Contributing
To report bugs or request features or assistance, raise an issue on GitHub.
Licence
MIT License
Copyright © 2010-2025 Roy Revelt and other contributors
