C/C++教程

Typescript类型体操 - ReplaceAll

本文主要是介绍Typescript类型体操 - ReplaceAll,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

答案

中文

实现 ReplaceAll<S, From, To> 将一个字符串 S 中的所有子字符串 From 替换为 To

例如

type replaced = ReplaceAll<'t y p e s', ' ', ''> // 期望是 'types'

English

Implement ReplaceAll<S, From, To> which replace the all the substring From with To in the given string S

For example

type replaced = ReplaceAll<'t y p e s', ' ', ''> // expected to be 'types'

答案

type ReplaceAll<S extends string, From extends string, To extends string> = From extends ''
  ? S
  : (S extends `${infer L}${From}${infer R}`
    ? `${ReplaceAll<L, From, To>}${To}${ReplaceAll<R, From, To>}`
    : S);

在线演示

这篇关于Typescript类型体操 - ReplaceAll的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!