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-Key: 1083107231

Url: https://administrator.de/contentid/1083107231

Printed on: April 25, 2024 at 04:04 o'clock

Mitglied: 149062
149062 Jul 24, 2021 updated at 08:41:45 (UTC)
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
Member: BadBatchCoder
BadBatchCoder Jul 24, 2021 at 08:47:49 (UTC)
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
Member: BadBatchCoder
Solution BadBatchCoder Jul 24, 2021 at 10:28:28 (UTC)
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"
Mitglied: 149062
149062 Jul 24, 2021 updated at 12:07:25 (UTC)
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. 😉