mirror of
https://git.unlock-music.dev/um/um-react.git
synced 2024-11-27 22:02:16 +00:00
21 lines
454 B
TypeScript
21 lines
454 B
TypeScript
|
export function splitN(str: string, sep: string, maxN: number) {
|
||
|
if (maxN <= 1) {
|
||
|
return [str];
|
||
|
}
|
||
|
|
||
|
const chunks: string[] = [];
|
||
|
const lenSep = sep.length;
|
||
|
let searchIdx = 0;
|
||
|
for (; maxN > 1; maxN--) {
|
||
|
const nextIdx = str.indexOf(sep, searchIdx);
|
||
|
if (nextIdx === -1) {
|
||
|
break;
|
||
|
}
|
||
|
chunks.push(str.slice(searchIdx, nextIdx));
|
||
|
searchIdx = nextIdx + lenSep;
|
||
|
}
|
||
|
|
||
|
chunks.push(str.slice(searchIdx));
|
||
|
return chunks;
|
||
|
}
|