UNPKG

@technobuddha/library

Version:
28 lines 2.39 kB
import { isRegExp } from "./is-reg-exp.js"; import { isString } from "./is-string.js"; import { trimEquivalent } from "./regexp.js"; import { splitChars } from "./split-chars.js"; import { empty } from "./unicode.js"; /** * Remove all occurrences of characters from the start of the string * @param input - The string * @param characters - The characters(s) to remove * @group String * @category Operations */ export function cleanStart(input, characters = trimEquivalent) { const re = isString(characters) ? splitChars(characters) .map((ch) => RegExp.escape(ch)) .join('|') : isRegExp(characters) ? characters.source : characters .map((c) => isRegExp(c) ? c.source : splitChars(c) .map((ch) => RegExp.escape(ch)) .join('|')) .join('|'); return input.replace(new RegExp(`^(${re})+`, 'u'), empty); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xlYW4tc3RhcnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY2xlYW4tc3RhcnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMxQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXJDOzs7Ozs7R0FNRztBQUNILE1BQU0sVUFBVSxVQUFVLENBQ3hCLEtBQWEsRUFDYixhQUFvRCxjQUFjO0lBRWxFLE1BQU0sRUFBRSxHQUNOLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBQ3BCLFVBQVUsQ0FBQyxVQUFVLENBQUM7YUFDbkIsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2FBQzlCLElBQUksQ0FBQyxHQUFHLENBQUM7UUFDZCxDQUFDLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsTUFBTTtZQUMxQyxDQUFDLENBQUMsVUFBVTtpQkFDUCxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNULFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNYLENBQUMsQ0FBQyxNQUFNO2dCQUNWLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO3FCQUNWLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztxQkFDOUIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUNmO2lCQUNBLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUVqQixPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxNQUFNLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxHQUFHLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztBQUM1RCxDQUFDIn0=