badbatchcoder
Goto Top

Mit .strip() Reststring zurückgeben

Hallo Freunde,

ich lerne momentan Python und bin dabei auf folgendes Problem gestoßen:
Ich wollte mit .strip() einen string nach einer bestimmten Zeichenkette am Anfang durchsuchen und diese abschneiden lassen. Wenn ich jedoch die Zeichenkette, die abgeschnitten werden soll als Parameter angebe, werden im Reststring einzelne Zeichen, die in der Zeichenkette des Parameters stehen, entfernt.
Ich gehe davon aus das liegt daran, dass .strip() nach jedem einzelnen Zeichen sucht und nicht nach der gesamten Zeichenkette.
Hab viel gegoogelt aber leider nichts gefunden.

Ich hoffe hier kann mir jemand weiterhelfen
Vielen Dank im Voraus
LG

Content-ID: 1083107231

Url: https://administrator.de/forum/mit-strip-reststring-zurueckgeben-1083107231.html

Ausgedruckt am: 22.12.2024 um 11:12 Uhr

149062
149062 24.07.2021 aktualisiert um 10:41:45 Uhr
Goto Top
https://tio.run/##K6gsycjPM/7/v6SiRMFWQUkHBIqLExPLy8HMpMQ8IFTiqgBKApXo5R ...
txt = ",,,,,ssaaww,,,,,banana"  
x = txt.lstrip(",")  
print(x)

Strip entfernt am Anfang und am Ende eines Strings! lstrip nur am Anfang, rstrip nur am Ende.
Hab viel gegoogelt aber leider nichts gefunden.
Nicht googleln, erste Devise > Handbuch/Doku lesen lernen !
https://docs.python.org/3/library/stdtypes.html?highlight=lstrip#str.lst ...
https://www.w3schools.com/python/ref_string_strip.asp
https://www.w3schools.com/python/ref_string_lstrip.asp
BadBatchCoder
BadBatchCoder 24.07.2021 um 10:47:49 Uhr
Goto Top
Hier wird aber trotzdem noch nach einzelnen Zeichen gesucht.
Ich bräuchte eine Lösung, womit nach ganzen Zeichenketten gesucht wird.
Beispiel:
txt = "aabbccdd"  
x = txt.lstrip("aabbc")  
print(x)
# Ausgabe: cdd
BadBatchCoder
Lösung BadBatchCoder 24.07.2021 um 12:28:28 Uhr
Goto Top
Bin mitterweile selber drauf gekommen =)
Falls irgendwer das gleiche Problem hat und eine Lösung braucht:
string = str(input("Gib hier den String ein: "))  
search = str(input("Gib hier die Zeichenkette an, ab der abgeschnitten werden soll: "))  
print(string[(string.find(search)) + len(search):])
Man kann es bestimmt auch einfacher machen, aber es funktioniert!

Ein Beispiel:
string = str("Beispieltext")  
search = str("spiel")  
print(string[(string.find(search)) + len(search):])
Ausgegeben wird dann "text"
149062
149062 24.07.2021 aktualisiert um 14:07:25 Uhr
Goto Top
Zitat von @BadBatchCoder:
Man kann es bestimmt auch einfacher machen, aber es funktioniert!
Als da wären replace()
https://tio.run/##K6gsycjPM/7/v6AoM69EQ8kpJ9EppzQpJLW4REmvKLUgJzE5VUMdKq ...
print("BlaBlubTest".replace('BlaBlub','',1))  
https://www.w3schools.com/python/ref_string_replace.asp
oder auch
Regex Split() oder Sub()
https://tio.run/##K6gsycjPM/7/PzO3IL@oRKEolaukokTBVkHJKSfRKac0KSS1uESJq6 ...
import re
txt = "BlaBlubTest"  
print(re.sub('BlaBlub','',txt))  
https://note.nkmk.me/en/python-split-rsplit-splitlines-re/

usw. 😉