UNPKG

@yelon/util

Version:
42 lines (41 loc) 1.1 kB
/** * String formatting * * 字符串格式化 * ``` * format('this is ${name}', { name: 'asdf' }) * // output: this is asdf * format('this is ${user.name}', { user: { name: 'asdf' } }, true) * // output: this is asdf * ``` */ export declare function format(str: string | null | undefined, obj: any | null | undefined, needDeepGet?: boolean): string; export interface FormatMaskOption { mask: string; tokens?: Record<string, FormatMaskToken>; } export interface FormatMaskToken { pattern: RegExp; default?: any; transform?: (char: string) => string; } /** * Format mask * * 格式化掩码 * * | 字符 | 描述 | * | --- | --- | * | `0` | 任意数字,若该位置字符不符合,则默认为 `0` 填充 | * | `9` | 任意数字 | * | `#` | 任意字符 | * | `U` | 转换大写 | * | `L` | 转换小写 | * | `*` | 转换为 `*` 字符 | * * ```ts * formatMask('123', '(###)') => (123) * formatMask('15900000000', '999****9999') => 159****0000 * ``` */ export declare function formatMask(value: string, option: string | FormatMaskOption): string;