ascoders/weekly

答案错了

DaphnisLi opened this issue · 7 comments

image

typescript type ReplaceAll<S extends string, From extends string, To extends string> = From extends '' ? S : S extends ${infer A}${From}${infer B}?${A}${To}${ReplaceAll<B, From, To>}` : S

`

答案没问题,只不过每次都全量匹配了。你这个递归只传剩余部分,性能好一点。

这个答案有三个case都报错了
image

这个答案有三个case都报错了
image

发现一个问题,oobserve,替换ob为b,会变成observe。那么新组合而成的ob该不该被替换。原答案是会替换的,因为它每次都全量,你的是不替换的,至于哪个业务逻辑更合理就仁者见仁了。至于标红的,手边没电脑,等后面细看。

给的答案是不能替换

但不妨可以灵活的保留两个写法,这样通过细节的区分, 也相当于增加了题的多样性, 算是创造出一个题了

感谢 @DaphnisLi 指出问题,我给的题解确实有两个 bug:

  1. 替换 Key 为空字符串时会匹配任意字符。
  2. 替换后传入原字符串导致二次匹配。

为了保证严谨,在下次更新前我把答案修正下。第二点确实也可当做一种新要求来看待。

感谢@DaphnisLi题,我给的题解有两个错误:

  1. 替换键为空字符串时会匹配任意字符。
  2. 替换后原样导致二次匹配。

为了保证答案,我也可以在下一个更新前把答案当做做新点来要求。修改。

哈哈,以后还要向大佬多学习。读你的文章,受益匪浅。