First page Back Continue Last page Overview Image

Aufgabe

Schreiben Sie eine Funktion, die das n-te Vorkommen eines Strings sub durch einen String replacement ersetzt.

Die Funktion soll als Ergebnis den veränderten String zurückliefern, bzw. falls replacement nicht im String vorkommt, sonst den unveränderte Originalstring.

def findnth(s, sub, n):

num = 0

start = -1

while num < n:

start = s.find(sub, start+1)

if start == -1:

break

num += 1

return start

def replacenth(source, search, replacement, n):

pos = findnth(source, search, n)

if pos == -1:

return source

return source[:pos] + replacement + source[pos+len(search):]

s = "abcxyzabcjkjkjkabclkjkjlkjabcjlj"

print(findnth(s,"abc", 4))

print(replacenth(s,"abc","---", 4))