让S
,a
并b
各自代表一个字符串
目标:写在你更换所有出现一个标准的字符串替换功能a
的字符串S
与b
,只要a
是没有的一个实例的一部分b
例如,如果我们有字符串S
=My oh my that there is a big ol' that
我们想做一个花哨取代a = that
和b = that there
我们将取代每个实例that
有that there
,只要实例that
是不是已经实例that there
因此,在这种情况下,输出为: My oh my that there is a big ol' that there
that
不替换第一个,因为它已经是实例的一部分。that there
笔记
所有3个输入必须是仅包含可打印ASCII字符的字符串
输入可以给出3个单独的字符串或3个字符串的列表
输入将在订货
S
,a
,b
除非在回答另有规定为了
a
被视为的一部分b
,的所有实例都a
必须是实例的一部分b
一些极端案例的解释
Input: ["1222", "22", "122"]
Output: "12122"
在上述示例中,后者22
被替换了。即使它的一部分是的一个实例的一部分,它b
的整体也不是的一个实例的一部分b
。由于的整个实例a
不是其实例的一部分,b
因此将替换它。
Input: ["123 ", "23", "12"]
Output: "112 "
该测试用例说明了与上述相同的情况,但也许以更清晰的方式进行了说明。同样2
,中间的既是的实例的一部分,又是的实例的a
一部分b
,但是由于所有a
实例都不是实例的一部分,b
因此仍然被替换。
Input: ["Empty", "", "p"]
Output: "pEpmptpyp"
在上述测试案例中,之前和之后的空字符串p
均未替换,因为可以完全视为的实例的一部分p
。
其他测试用例
Input: ["aabbaa", "aa", "aabb"]
Output: "aabbaabb"
Input: ["Hello World!", "o", " no"]
Output: "Hell no W norld!"
Input: ["Wow, oh wow, seriously WOW that's... wow", "wow", "WOW,"]
Output: "Wow, oh WOW,, seriously WOW that's... WOW,"
Input: ["Empty", "", "b"]
Output: "bEbmbpbtbyb"
Input: ["Empty", "b", "br"]
Output: "Empty"
Input: ["Empty", "pty", "Empty"]
Output: "Empty"
Input: ["aabbaaa", "aa", "PP"]
Output: "PPbbPPa"
Input: ["121212","1","121"]
Output: "121212"
这是关于代码高尔夫球的问题,因此最短的答案以字节为单位。