하자 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"
이것은 코드 골프에 대한 질문이므로 바이트 단위의 최단 답변이 이깁니다.