实现 Replace<S, From, To>,将字符串 S 中的第一个子字符串 From 替换为 To
例如:
type replaced = Replace<'types are fun!', 'fun', 'awesome'> // 期望是 'types are awesome!'
答案
type Replace<S extends string, From extends string, To extends string> = From extends '' ? S : S extends `${infer L}${From}${infer R}` ? `${L}${To}${R}` : S