Validationメッセージなどのメッセージには決まった文言が入るが、一部を置き換えたい場合などは、テンプレートリテラルよりC言語系で使われるSprintfが便利なのだが、JavaScriptにないため自作した。
export const sprintf = (format: string, ...args: string[]): string => { return format.replace(/{(\d+)}/g, (_match, index) => { return args[index]; }); }; sprintf('{0}を入力してください', '名前') => '名前を入力してください'
[参考]
javascript - Convert JS sprintf to Typescript equivalent - Stack Overflow
Is there a sprintf equivalent for node.js - Code Examples